khi vị trí hiện tại của điểm. Giá trị này được in trong vùng phản hồi trừ khi chức năng này được gọi với một tham số, trong trường hợp đó, đầu ra là in trong bộ đệm hiện tại. Lệnh này thường bị ràng buộc C-x C-e. defun Xác định chức năng. Điều này đặc biệt | 108 Chapter 8 Cutting and Storing Text Thus if we had a four element list that was supposed to be three elements long we could set the CDR of the next to last element to nil and thereby shorten the list. You can see this by evaluating the following three expressions in turn. First set the value of trees to maple oak pine birch then set the CDR of its second CDR to nil and then find the value of trees setq trees maple oak pine birch maple oak pine birch setcdr nthcdr 2 trees nil nil trees maple oak pine The value returned by the setcdr expression is nil since that is what the CDR is set to. To repeat in kill-new the nthcdr function takes the CDR a number of times that is one less than the maximum permitted size of the kill ring and sets the CDR of that element which will be the rest of the elements in the kill ring to nil. This prevents the kill ring from growing too long. The next to last expression in the kill-new function is setq kill-ring-yank-pointer kill-ring The kill-ring-yank-pointer is a global variable that is set to be the kill-ring. Even though the kill-ring-yank-pointer is called a pointer it is a variable just like the kill ring. However the name has been chosen to help humans understand how the variable is used. The variable is used in functions such as yank and yank-pop see Chapter 10 Yanking Text Back page 117 . Now to return to the first two lines in the body of the function and fboundp menu-bar-update-yank-menu menu-bar-update-yank-menu string and replace car kill-ring This is an expression whose first element is the function and. The and special form evaluates each of its arguments until one of the arguments returns a value of nil in which case the and expression returns nil however if none of the arguments returns a value of nil the value resulting from evaluating the last argument is returned. Since such a value is not nil it is considered true in Emacs Lisp. In other words an and expression returns a true value only if all its arguments are .