【问题标题】:elisp how can i input a hashmap directly? how did Hash's read-syntax like?elisp 如何直接输入哈希图? Hash 的读语法怎么样?
【发布时间】:2020-01-26 21:22:00
【问题描述】:

我想像javascript一样直接输入哈希:

hash = {
  key1: 'value1',
  key2: 'value2',
  key3: 'value3'
}

有时为了提高可读性,

我在 elisp 中试过这个:

 #s(:a 1 :b 2)

但会出错。

【问题讨论】:

标签: emacs elisp


【解决方案1】:

我发现我可以这样做,并且有效。

 #s(hash-table data (
   :key1   "value1"
   :key2   "value2"))

【讨论】:

    【解决方案2】:

    来自http://ergoemacs.org/emacs/elisp_hash_table.html

    (setq myHash
      #s(hash-table
         size 30
         test equal
         data (
               "joe" 3
               "jane" 9
               "liz" 5 )))
    
    
    
    ;; test
    (gethash "joe" myHash ) ; 3
    

    引用: :test 'equal 是指定使用什么函数来测试密钥是否存在。

    我还没有看到有关尺寸的信息,但假设它是最大尺寸,我试过了,它对我有用(我只需要它是静态的)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-24
      • 2023-03-21
      • 1970-01-01
      • 2020-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多