当我使用emacsclient --eval '(current-buffer)'它时返回*server*而不是current-buffer在emacs上.我可以*server*使用--eval命令插入和修改,但有没有办法知道它是否插入到真正的当前缓冲区?有没有办法传递一个字符串#<buffer index.html>,让它变成缓冲对象?
我有一个字符列表,(?h ?e ?l ?l ?o)我想将其转换为字符串"hello".目前我使用这种结构:
(concat (mapcar (lambda (ch) (char-to-string ch)) s))
Run Code Online (Sandbox Code Playgroud)
是否有更优雅和惯用的方式将字符列表转换为 Elisp中的字符串?
itertools.count 在Racket中是否有Python的模拟?我想创建一个均匀间隔数字的无限流.in-naturals类似于我想要的,但不提供步骤.我想不要重新发明轮子,但如果没有相应的功能,怎么写一个?(我认为应该使用发电机)
要在缓冲区中获取没有扩展名的绝对文件路径,例如/home/alice/hello.cpp- > /home/alice/hello,以下代码可以正常工作
(concat (file-name-directory (buffer-file-name)) (file-name-base (buffer-file-name)))
Run Code Online (Sandbox Code Playgroud)
但它看起来太冗长了.是否有一种优雅的方式或直接的功能?
我有一个递归代数数据类型来实现类似Lisp的嵌套列表:
data T a = N a | L [T a] deriving (Show, Eq)
Run Code Online (Sandbox Code Playgroud)
L [N 1, L [N 2, L [N 3, L [N 4], N 5], N 6], N 7]相当于Lisp的(1 (2 (3 (4) 5) 6) 7).现在我想部分扁平化这个嵌套列表,即降低到某个级别但不再是:
flattenN 0 t -- L [N 1,L [N 2,L [N 3,L [N 4],N 5],N 6],N 7]
flattenN 1 t -- L [N 1,N 2,L [N 3,L [N 4],N 5],N 6,N 7]
flattenN 2 t -- L [N 1,N 2,N …Run Code Online (Sandbox Code Playgroud) 我正在学习编程语言Elm.我想访问一个联盟的特定领域.我无法访问它.我在文档中搜索过.但我找不到任何地方如何访问联盟的特定领域.代码如下:
import Graphics.Element exposing (show)
import List exposing (length, filter, map)
type Person
= Person { fname: String, lname: String, age: Int}
p1 = Person { fname="ABC", lname="XYZ", age=23 }
p2 = Person { fname="JK", lname="Rowling", age=24 }
-- These are unions with fields
people : List Person
people = [ p1
, p2
, Person {fname= "Anakin", lname= "Luke", age= 12}
]
main = show [people]
Run Code Online (Sandbox Code Playgroud)
我不能用,p1.name因为p1不是记录.我如何进入该领域fname的p1还是p2?
我在这里按照这个链接尝试在Windows上为python dev设置emacs.虽然一切看起来都很好,但是pyflakes正在创建问题并且没有给我语法检查.每次我打开'.py'文件时,我都会收到错误"无法启动语法检查过程'pyflakes'和args'foo.py':搜索程序:没有这样的文件或目录pyflakes"
有人可以帮我这个吗?
更新:
这是我的.emacs
;; Abhi's c:\.emacs file
(add-to-list 'load-path "C:/emacs/colors/")
(require 'color-theme)
(eval-after-load "color-theme"
'(progn
(color-theme-initialize)
(color-theme-charcoal-black)))
(set-default-font "-outline-Monaco-normal-r-normal-normal-13-97-96-96-c-*-iso8859-1")
;Mappings to zoom in and out
(defun sacha/increase-font-size ()
(interactive)
(set-face-attribute 'default
(selected-frame)
:height
(ceiling (* 1.10
(face-attribute 'default :height)))))
(defun sacha/decrease-font-size ()
(interactive)
(set-face-attribute 'default
nil
:height
(floor (* 0.9
(face-attribute 'default :height)))))
(global-set-key (kbd "C-+") 'sacha/increase-font-size)
(global-set-key (kbd "C--") 'sacha/decrease-font-size)
;muse mode mappings
(add-to-list 'load-path "C:/emacs/Muse/muse-latest/lisp/")
(require 'muse-mode)
(require 'muse-latex)
(require 'muse-book)
(require 'muse-html)
(require …Run Code Online (Sandbox Code Playgroud) 我有一个程序,用户在其中输入一个日期,然后将其与另一个日期进行比较,以查看第一个出现的日期。
在用户输入2月29日且程序返回2月28日的情况下(因为没有leap年),我将如何编写代码?
例:
def date(prompt):
''' returns the date that user inputs and validates it'''
while True:
try:
date = raw_input(prompt)
if len(date) >= 5:
month = date[0:2]
day = date[3:5]
dateObject = datetime.date(2011, int(month), int(day))
return dateObject
except ValueError:
print "Please enter a valid month and day"
Run Code Online (Sandbox Code Playgroud) 我execute-extended-command一定要用alt + a.因此,当我使用迷你缓冲区时,按下它时,只读提示"Mx"对我来说无关紧要.我想将其更改为"执行命令:"之类的其他内容.我怎样才能做到这一点?