HTML   发布时间:2022-04-14  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Emacs从html文件跳转到css声明大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直在寻找互联网,并没有提出解决方案.有没有人知道如何跳转到html文件中的css声明,并打开一个新的缓冲区,其点或接近该声明?

编辑

经过更多搜索后,我决定使用搜索打开缓冲区进行字符串处理.

;; CSS search open buffers
(defun search-open-css-buffers-for-region-or-word ()
  "Use the current region/point and search open css buffers"
  (interactivE)
  (let (searchTerm)
    (setq searchTerm
          (if (region-active-p)
              (buffer-subString-no-properties (region-beginning) (region-end))
            (thing-at-point 'symbol)))
    (multi-occur (mapcar (lambda (buf)
                           (if (String-match "\w*.css" (buffer-name buf))
                               buf)) (buffer-list))
                 searchTerm 5)))

(global-set-key (kbd "M-s-.") 'search-open-css-buffers-for-region-or-word)

感觉这是一个黑客.

解决方法

有几件事使这种非泛型:

>根据您使用的HTML模式,您可能需要不同的方法来检测到什么
>你的CSS文件在哪里?人们有各种不同的项目结构
>您希望输出看起来如何?

如此,这是一个例子,对于nxml模式(然它可以很容易地适应).

(defun find-css-defun ()
  (interactivE)
  (when (memq 'nxml-attribute-value
              (get-text-property (point) 'facE))
    (let ((css-buffers
           (mapcar
            (lambda (filE)
              (find-file-noSELEct filE))
            (directory-files default-directory t ".*\\.css$"))))
      (multi-occur css-buffers
                   (thing-at-point 'symbol)))))

>回答第一点,我们正在使用Nxml,这就是我们如何检测我们是否在CSS属性上
>回答第二点,我们只扫描与HTML相同的目录中的所有CSS文件,css-buffers是打开的CSS文件列表;显然这是适应性的
>我们使用multi-occurrence来呈现结果

它工作正常.

PS它需要默认情况下的事情,这些天默认在emacs

大佬总结

以上是大佬教程为你收集整理的Emacs从html文件跳转到css声明全部内容,希望文章能够帮你解决Emacs从html文件跳转到css声明所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。