zoukankan      html  css  js  c++  java
  • _emacs配置文件

    (绝大部分是来自网上别人的配置文件,自己略加修改罢了。)

    将会保持更新!!

    windows:

    //linenums won't be copied
    ;;Load_path  
    (add-to-list 'load-path' "~/.emacs.d/lisp")  
       
    ;;todo_path  
    (setq todo-file-do "~/emacs/todo/do")  
    (setq todo-file-done "~/emacs/todo/done")  
    (setq todo-file-top "~/emacs/todo/top")  
       
    ;;Personal information  
    (setq user-full-name "Lazycal")  
    (setq user-mail-address "Lazycal12@gmail.com") 
     ;;外观设置
    ;;颜色设置,其实有个color-theme.el可以将Emacs设置丰富多彩,非常漂亮,不过启动有些慢,我只是选择了一些颜色设置。
    ;;高亮行
    (require 'hl-line)
    (global-hl-line-mode t)
    ;;历史
    ;;(require 'session-settings)
    ;(require 'color-theme)
    ;(color-theme-aalto-light)
    ;;开启时最大化
    ;;Thanks http://zhaojunde1976.blog.163.com/blog/static/121998668201041131130734/
    (run-with-idle-timer 0 nil 'w32-send-sys-command 61488)
    ;; 回车缩进
    (global-set-key "\C-m" 'newline-and-indent)
    (global-set-key (kbd "C-<return>") 'newline-and-indent)
    ;;font
    (set-default-font "YaHei Consolas Hybrid")
    (add-to-list 'default-frame-alist '(font . "YaHei Consolas Hybrid-11"))
    ;;;;;去掉工具栏
    (tool-bar-mode nil)
    ;;光标显示为一竖线
    (setq-default cursor-type 'bar)
    ;;;;;去掉菜单栏,我将F10绑定为显示菜单栏,万一什么东西忘了,需要菜单栏了可以摁F10调出,再摁F10就去掉菜单
    (menu-bar-mode nil)
    ;;;;;不要滚动栏,现在都用滚轴鼠标了,可以不用滚动栏了
    (scroll-bar-mode nil)
    ;;;;;改变emacs标题栏的标题
    (setq frame-title-format "%b")
    ;;;;;允许emacs和外部其他程序的粘贴
    (setq x-select-enable-clipboard t)
    ;; 显示列号
    (setq column-number-mode t)
    ;;开启语法高亮。
    (global-font-lock-mode 1)
    ;;设置tab为4个空格的宽度
    (setq default-tab-width 4)
    (setq c-basic-offset 4)
    ;;;;;;;;;  设置界面 start
    (setq inhibit-startup-message t)
    (set-cursor-color "Wheat")
    (set-mouse-color "Wheat")
    (set-foreground-color "Wheat")
    (set-background-color "DarkSlateGray")
    (if window-system
        (setq default-frame-alist
              (append
               '( (top . 0)
                  (left . 100)
                  (width . 110)
                  (height . 35))
               default-frame-alist))
      )
    ;;;;;启用时间显示设置,在minibuffer上面的那个杠上(忘了叫什么来着)
    (display-time-mode 1)
    ;;设置缺省目录
    (setq default-directory "D:/lazycal")
    ;;;;;时间使用24小时制
    (setq display-time-24hr-format t)
    ;;;;;时间显示包括日期和具体时间
    (setq display-time-day-and-date t)
    ;;;;;时间的变化频率,单位多少来着?
    (setq display-time-interval 10)
    ;;;;;鼠标自动避开指针,如当你输入的时候,指针到了鼠标的位置,鼠标有点挡住视线了
    (mouse-avoidance-mode 'animate)
    ;;;;;指针不要闪,我得眼睛花了
    (blink-cursor-mode -1)
    ;;======================            Load linum                 =====================
    ;;调用linum.el(line number)来显示行号:
    ;;(add-to-list 'load-path"~/.emacs.d/plugins")
    (require 'linum)
    (global-linum-mode 1)
    ;;----------------------            END    linum                ---------------------
    
    ;;;高亮显示要拷贝的内容
    (transient-mark-mode 1)
    ;;;;;当指针到一个括号时,自动显示所匹配的另一个括号
    (show-paren-mode 1)
    ;;;;;是用滚轴鼠标
    (mouse-wheel-mode t)
    ;;;;;备份设置
    ;;;;;emacs还有一个自动保存功能,默认在~/.emacs.d/auto-save-list里,这个非常有用,我这里没有改动,具体可以参见Sams teach yourself emacs in 24hours(我简称为sams24)
    ;;;;;启用版本控制,即可以备份多次
    (setq version-control t)
    ;;;;;备份最原始的版本两次,记第一次编辑前的文档,和第二次编辑前的文档
    (setq kept-onld-versions 2)
    ;;;;;备份最新的版本五次,理解同上
    (setq kept-new-versions 5)
    ;;;;;删掉不属于以上7中版本的版本
    (setq delete-old-versions t)
    ;;;;;设置备份文件的路径
    (setq backup-directory-alist '(("." . "~/.emacs.tmp")))
    ;;;;;备份设置方法,直接拷贝
    (setq backup-by-copying t)
    ;; 自动存盘
    (setq auto-save-mode t)
    ;; C-k 删除整行包括回车
    (setq-default kill-whole-line t)
    ;;(blink-cursor-mode -1)       
    ;; 存盘的时候,要求最后一个字符时换行符。
    (setq require-final-newline t)
    ;;;;;去掉烦人的警告铃声
    (setq visible-bell nil)
    (defun kill-the-whole-line()
      "rt"
      (interactive)
      (save-excursion
        (beginning-of-line)
        (kill-line)
        )
      )
    ;;(global-unset-key (kbd "C-k"))
    ;;;;;滚动页面时比较舒服,不要整页的滚动
    (setq scroll-step 1
          scroll-margin 3
          scroll-conservatively 10000)
    ;;;;;标记
    (global-set-key [(control ?\.)] 'ska-point-to-register)
    (global-set-key [(control ?\,)] 'ska-jump-to-register)
    (defun ska-point-to-register()
      "Store cursorposition _fast_ in a register. 
    Use ska-jump-to-register to jump back to the stored 
    position."
      (interactive)
      (setq zmacs-region-stays t)
      (point-to-register 8))
    
    (defun ska-jump-to-register()
      "Switches between current cursorposition and position
    that was stored with ska-point-to-register."
      (interactive)
      (setq zmacs-region-stays t)
      (let ((tmp (point-marker)))
        (jump-to-register 8)
        (set-register 8 tmp)))
    (defun string<=(a b)
      (or (string< a b) (string= a b))
      )
    (defun string>(a b)
      (not (string<= a b))
      )
    (defun string>=(a b)
      (or (string> a b) (string= a b))
      )
    (defun the_first_char_is_num(a)
      (let ((sa (substring a 0 1)))
        (and (string<= sa "9") (string>= sa "0"))
        )
      )
    (defun filename()
      (buffer-name)
      )
    (defun filename_non_suffix()
      (substring (filename) 0 (string-match (regexp-quote ".") (filename)))
      )
    ;;热键设置
    (global-set-key (kbd "C-k")
                    (lambda ()
                      (interactive)
                      (beginning-of-line)
                      (kill-line)
                      )
                    )
    (defun my-pascal-mode-hook()
      ;(setq filename (buffer-name))
      ;(setq filename_non_suffix (substring filename 0 (string-match (regexp-quote ".") filename)))
      (setq-default compile-command (concat "fpc " (filename_non_suffix) ".pas"))
      (local-set-key [C-f2]
    				 (lambda()
    				   (interactive )
    				   (split-window-vertically)
    				   (find-file (concat (filename_non_suffix) ".out")))
    				 )
      (local-set-key [C-f1]
    				 (lambda()
    				   (interactive )
    				   (split-window-vertically)
    				   (find-file (concat (filename_non_suffix) ".in")))
    				 )
    )
    (add-hook 'pascal-mode-hook 'my-pascal-mode-hook)
    (defun my-c++-mode-hook()
      ;(setq filename (buffer-name))
      ;(setq filename_non_suffix (substring filename 0 (string-match (regexp-quote ".") filename)))
      (local-set-key [f7]
    				 '(lambda()
    					(interactive)
    					(compile (concat "g++ " (filename_non_suffix) ".cpp -o " (filename_non_suffix) ".exe -g -Wall && start " (filename_non_suffix) ".exe"))
    					)
    				 )
      ;;c++编写文件的快捷键(edited by very lazy Lazycal)
      (local-set-key (kbd "C-c C-f")
      ;(define-key c++-mode-base-map (kbd "C-c C-f")
                      (lambda ()
                        (interactive)
                        (insert "#ifndef ONLINE_JUDGE")
                        (newline-and-indent)
                        (insert "freopen(\"" (filename_non_suffix) ".in\",\"r\",stdin);")
                        (newline-and-indent)
    					(insert "freopen(\"" (filename_non_suffix) ".out\",\"w\",stdout);")
                        (newline-and-indent)
                        (insert "#endif")
                        (newline-and-indent)
                        )
                      )
      (local-set-key [f8] (lambda()
    						   (interactive )
    						   (shell-command (concat "start " (filename_non_suffix) ".exe")))
    				 )
      (local-set-key [f12]
    				 (lambda()
    				   (interactive )
    				   (split-window-vertically)
    				   (find-file (concat (filename_non_suffix) ".out")))
    				 )
      (local-set-key [f11]
    				 (lambda()
    				   (interactive )
    				   (split-window-vertically)
    				   (find-file (concat (filename_non_suffix) ".in")))
    				 )
      )
    (add-hook 'c++-mode-hook 'my-c++-mode-hook)
    (global-set-key [M-f5]
    				(lambda()
    				  (interactive )
    				  (kill-this-buffer)
    				  (delete-window)
    				  )
    				)
    (global-set-key [M-f6] 'speedbar)
    (global-set-key [f5] 'delete-window)
    (global-set-key [f6] 'other-window)
    (global-set-key [f9] 'gdb)
    (global-set-key [M-f9] 'gdb-many-windows)
    (global-set-key [M-f7] 'previous-error)
    (global-set-key [M-f8] 'next-error)
    ;;;;;设定删除保存记录为200,可以方便以后无pp限恢复
    (setq kill-ring-max 200)
    ;;;;;是用aspell程序作为Emacs的拼写检查成学
    (setq-default ispell-program-name "aspell")
    (require 'chm-view)
    (require 'w3m-load) 
    (setq w3m-use-favicon nil)
    (setq w3m-command-arguments '("-cookie" "-F")) 
    (setq w3m-use-cookies t) 
    (setq w3m-home-page "http://www.baidu.com") 
    (setq w3m-default-display-inline-images t)
    ;(require 'session)
    ;(add-hook 'after-init-hook 'session-initialize)
    ;(require 'wcy-desktop)
    ;(wcy-desktop-init)
    

    linux:

    //linenums won't be copied
    ;;Load_path  
    (add-to-list 'load-path' "~/.emacs.d/lisp")  
       
    ;;todo_path  
    ;(setq todo-file-do "~/emacs/todo/do")  
    ;(setq todo-file-done "~/emacs/todo/done")  
    ;(setq todo-file-top "~/emacs/todo/top")  
       
    ;;Personal information  
    (setq user-full-name "Lazycal")  
    (setq user-mail-address "Lazycal12@gmail.com") 
     ;;外观设置
    ;;颜色设置,其实有个color-theme.el可以将Emacs设置丰富多彩,非常漂亮,不过启动有些慢,我只是选择了一些颜色设置。
    ;;高亮行
    (require 'hl-line)
    (global-hl-line-mode t)
    ;;历史
    ;;(require 'session-settings)
    ;(load "/home/lazycal/Yunio/solarized/emacs-colors-solarized/color-theme-solarized.el")
    ;(require 'color-theme)
    ;(color-theme-solarized-lignt)
    ;(color-theme-aalto-light)
    ;;开启时最大化
    ;;Thanks http://zhaojunde1976.blog.163.com/blog/static/121998668201041131130734/
    ;(run-with-idle-timer 0 nil 'w32-send-sys-command 61488)
    ;; 回车缩进
    (global-set-key "\C-m" 'newline-and-indent)
    (global-set-key (kbd "C-") 'newline-and-indent)
    ;;font
    (set-default-font "Ubuntu Mono")
    (add-to-list 'default-frame-alist '(font . "Ubuntu Mono-11"))
    ;;;;;去掉工具栏
    (tool-bar-mode nil)
    ;;光标显示为一竖线
    (setq-default cursor-type 'bar)
    ;;;;;去掉菜单栏,我将F10绑定为显示菜单栏,万一什么东西忘了,需要菜单栏了可以摁F10调出,再摁F10就去掉菜单
    (menu-bar-mode nil)
    ;;;;;不要滚动栏,现在都用滚轴鼠标了,可以不用滚动栏了
    ;(scroll-bar-mode nil)
    ;;;;;改变emacs标题栏的标题
    (setq frame-title-format "%b")
    ;;;;;允许emacs和外部其他程序的粘贴
    (setq x-select-enable-clipboard t)
    ;; 显示列号
    (setq column-number-mode t)
    ;;开启语法高亮。
    (global-font-lock-mode 1)
    ;;设置tab为4个空格的宽度
    (setq default-tab-width 4)
    (setq c-basic-offset 4)
    ;;;;;;;;;  设置界面 start
    (setq inhibit-startup-message t)
    (set-cursor-color "Black")
    (set-mouse-color "Black")
    (set-foreground-color "Black")
    (set-background-color "White")
    ;(if window-system
    ;    (setq default-frame-alist
    ;          (append
    ;           '( (top . 0)
    ;              (left . 100)
    ;              (width . 110)
    ;              (height . 35))
    ;           default-frame-alist))
    ;  )
    ;;;;;启用时间显示设置,在minibuffer上面的那个杠上(忘了叫什么来着)
    (display-time-mode 1)
    ;;设置缺省目录
    (setq default-directory "~/桌面/OI")
    ;;;;;时间使用24小时制
    (setq display-time-24hr-format t)
    ;;;;;时间显示包括日期和具体时间
    (setq display-time-day-and-date t)
    ;;;;;时间的变化频率,单位多少来着?
    (setq display-time-interval 10)
    ;;;;;鼠标自动避开指针,如当你输入的时候,指针到了鼠标的位置,鼠标有点挡住视线了
    (mouse-avoidance-mode 'animate)
    ;;;;;指针不要闪,我得眼睛花了
    (blink-cursor-mode -1)
    ;;======================            Load linum                 =====================
    ;;调用linum.el(line number)来显示行号:
    ;;(add-to-list 'load-path"~/.emacs.d/plugins")
    (require 'linum)
    (global-linum-mode 1)
    ;;----------------------            END    linum                ---------------------
    
    ;;;高亮显示要拷贝的内容
    (transient-mark-mode 1)
    ;;;;;当指针到一个括号时,自动显示所匹配的另一个括号
    (show-paren-mode 1)
    ;;;;;是用滚轴鼠标
    (mouse-wheel-mode t)
    ;;;;;备份设置
    ;;;;;emacs还有一个自动保存功能,默认在~/.emacs.d/auto-save-list里,这个非常有用,我这里没有改动,具体可以参见Sams teach yourself emacs in 24hours(我简称为sams24)
    ;;;;;启用版本控制,即可以备份多次
    (setq version-control t)
    ;;;;;备份最原始的版本两次,记第一次编辑前的文档,和第二次编辑前的文档
    (setq kept-onld-versions 2)
    ;;;;;备份最新的版本五次,理解同上
    (setq kept-new-versions 5)
    ;;;;;删掉不属于以上7中版本的版本
    (setq delete-old-versions t)
    ;;;;;设置备份文件的路径
    (setq backup-directory-alist '(("." . "~/.emacs.tmp")))
    ;;;;;备份设置方法,直接拷贝
    (setq backup-by-copying t)
    ;; 自动存盘
    (setq auto-save-mode t)
    ;; C-k 删除整行包括回车
    (setq-default kill-whole-line t)
    ;;(blink-cursor-mode -1)       
    ;; 存盘的时候,要求最后一个字符时换行符。
    (setq require-final-newline t)
    ;;;;;去掉烦人的警告铃声
    (setq visible-bell nil)
    (defun kill-the-whole-line()
      "rt"
      (interactive)
      (save-excursion
        (beginning-of-line)
        (kill-line)
        )
      )
    ;;(global-unset-key (kbd "C-k"))
    ;;;;;滚动页面时比较舒服,不要整页的滚动
    (setq scroll-step 1
          scroll-margin 3
          scroll-conservatively 10000)
    ;;;;;标记
    (global-set-key [(control ?\.)] 'ska-point-to-register)
    (global-set-key [(control ?\,)] 'ska-jump-to-register)
    (defun ska-point-to-register()
      "Store cursorposition _fast_ in a register. 
    Use ska-jump-to-register to jump back to the stored 
    position."
      (interactive)
      (setq zmacs-region-stays t)
      (point-to-register 8))
    
    (defun ska-jump-to-register()
      "Switches between current cursorposition and position
    that was stored with ska-point-to-register."
      (interactive)
      (setq zmacs-region-stays t)
      (let ((tmp (point-marker)))
        (jump-to-register 8)
        (set-register 8 tmp)))
    (defun string<=(a b)
      (or (string< a b) (string= a b))
      )
    (defun string>(a b)
      (not (string<= a b))
      )
    (defun string>=(a b)
      (or (string> a b) (string= a b))
      )
    (defun the_first_char_is_num(a)
      (let ((sa (substring a 0 1)))
        (and (string<= sa "9") (string>= sa "0"))
        )
      )
    (defun filename()
      (buffer-name)
      )
    (defun filename_non_suffix()
      (substring (filename) 0 (string-match (regexp-quote ".") (filename)))
      )
    ;;热键设置
    (global-set-key (kbd "C-k")
                    (lambda ()
                      (interactive)
                      (beginning-of-line)
                      (kill-line)
                      )
                    )
    (defun my-pascal-mode-hook()
      ;(setq filename (buffer-name))
      ;(setq filename_non_suffix (substring filename 0 (string-match (regexp-quote ".") filename)))
      (setq-default compile-command (concat "fpc " (filename_non_suffix) ".pas"))
      (local-set-key [C-f2]
    				 (lambda()
    				   (interactive )
    				   (split-window-vertically)
    				   (find-file (concat (filename_non_suffix) ".out")))
    				 )
      (local-set-key [C-f1]
    				 (lambda()
    				   (interactive )
    				   (split-window-vertically)
    				   (find-file (concat (filename_non_suffix) ".in")))
    				 )
    )
    (add-hook 'pascal-mode-hook 'my-pascal-mode-hook)
    (defun my-c++-mode-hook()
      ;(setq filename (buffer-name))
      ;(setq filename_non_suffix (substring filename 0 (string-match (regexp-quote ".") filename)))
      (local-set-key [f7]
    				 '(lambda()
    					(interactive)
    					(compile (concat "g++ " (filename_non_suffix) ".cpp -o " (filename_non_suffix) " -g -Wall && gnome-terminal -e ./" (filename_non_suffix)
    					))
    					)
    				 )
      ;;c++编写文件的快捷键(edited by very lazy Lazycal)
      (local-set-key (kbd "C-c C-f")
      ;(define-key c++-mode-base-map (kbd "C-c C-f")
                      (lambda ()
                        (interactive)
                        (insert "#ifndef ONLINE_JUDGE")
                        (newline-and-indent)
                        (insert "freopen(\"" (filename_non_suffix) ".in\",\"r\",stdin);")
                        (newline-and-indent)
    					(insert "freopen(\"" (filename_non_suffix) ".out\",\"w\",stdout);")
                        (newline-and-indent)
                        (insert "#endif")
                        (newline-and-indent)
                        )
                      )
      (local-set-key [f8] (lambda()
    						   (interactive )
    						   (shell-command (concat "exo-open --launch TerminalEmulator ./" (filename_non_suffix))))
    				 )
      (local-set-key [f12]
    				 (lambda()
    				   (interactive )
    				   (split-window-vertically)
    				   (find-file (concat (filename_non_suffix) ".out")))
    				 )
      (local-set-key [f11]
    				 (lambda()
    				   (interactive )
    				   (split-window-vertically)
    				   (find-file (concat (filename_non_suffix) ".in")))
    				 )
      )
    (add-hook 'c++-mode-hook 'my-c++-mode-hook)
    (global-set-key [M-f5]
    				(lambda()
    				  (interactive )
    				  (kill-this-buffer)
    				  (delete-window)
    				  )
    				)
    (global-set-key [M-f6] 'speedbar)
    (global-set-key [f5] 'delete-window)
    (global-set-key [f6] 'other-window)
    (global-set-key [f9] 'gdb)
    (global-set-key [M-f9] 'gdb-many-windows)
    (global-set-key [M-f7] 'previous-error)
    (global-set-key [M-f8] 'next-error)
    ;;;;;设定删除保存记录为200,可以方便以后无pp限恢复
    (setq kill-ring-max 200)
    ;;;;;是用aspell程序作为Emacs的拼写检查成学
    (setq-default ispell-program-name "aspell")
    
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ;;
    ;;  设置emacs-w3m浏览器
    ;;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    
    ;(add-to-list 'load-path "~/emacs-w3m/")
    ;(require 'w3m-load)
    ;(require 'mime-w3m)
    ;(autoload 'w3m "w3m" "interface for w3m on emacs" t) 
    
    ;; 设置w3m主页
    ;(setq w3m-home-page "http://www.baidu.com")
    
    ;; 默认显示图片
    ;(setq w3m-default-display-inline-images t)
    ;(setq w3m-default-toggle-inline-images t)
    
    ;; 使用cookies
    ;(setq w3m-use-cookies t)
    
    ;;设定w3m运行的参数,分别为使用cookie和使用框架  
    ;(setq w3m-command-arguments '("-cookie" "-F"))               
    
    ;; 使用w3m作为默认浏览器
    ;(setq browse-url-browser-function 'w3m-browse-url)                
    ;(setq w3m-view-this-url-new-session-in-background t)
    
    ;;显示图标                                                      
    ;(setq w3m-show-graphic-icons-in-header-line t)                  
    ;(setq w3m-show-graphic-icons-in-mode-line t) 
    
    ;;C-c C-p 打开,这个好用                                        
    ;(setq w3m-view-this-url-new-session-in-background t)  
    
    ;(add-hook 'w3m-fontify-after-hook 'remove-w3m-output-garbages)                                    
    ;(defun remove-w3m-output-garbages ()                            
    ;"去掉w3m输出的垃圾."                                            
    ;(interactive)                                                   
    ;(let ((buffer-read-only))                                       
    ;(setf (point) (point-min))                                      
    ;(while (re-search-forward "[\200-\240]" nil t)                  
    ;(replace-match " "))                                            
    ;(set-buffer-multibyte t))                                       
    ;(set-buffer-modified-p nil))
    ;(require 'chm-view)
    ;(require 'session)
    ;(add-hook 'after-init-hook 'session-initialize)
    ;(require 'wcy-desktop)
    ;(wcy-desktop-init)
    

      

  • 相关阅读:
    Atitit fms Strait (海峡) lst 数据列表目录1. 4大洋 12. 著名的海大约40个,总共约55个海 13. 海区列表 23.1. 、波利尼西亚(Polynesia,
    Atitit trave islands list 旅游资源列表岛屿目录1. 东南亚著名的旅游岛屿 21.1. Cjkv 日韩 冲绳 琉球 济州岛 北海道 21.2. 中国 涠洲岛 南澳
    Atitit Major island groups and archipelagos 主要的岛群和群岛目录资料目录1. 岛群 波利尼西亚(Polynesia, 美拉尼西亚(Melanesia,
    Atitit glb 3tie city lst 三线城市列表 数据目录1. 全球范围内约90个城市 三线 12. 世界性三线城市全球共
    Atitit glb 1tie 2tie city lst 一二线城市列表数据约50个一线城市Alpha ++ 阿尔法++,,London 伦敦,,New York 纽约,,Alpha +
    Attit 现代编程语言重要特性目录第一章 类型系统 基本三大类型 2第一节 字符串 数字 bool 2第二节 推断局部变量 2第三节 动态类型 2第二章 可读性与开发效率 简单性 2
    Atitit 未来数据库新特性展望目录1. 统一的翻页 21.1. 2 Easy Top-N
    使用Chrome DevTools(console ande elements panel)进行xpath/css/js定位
    chrome -console妙用之定位xpath/js/css
    表达式树之构建Lambda表达式
  • 原文地址:https://www.cnblogs.com/lazycal/p/2660528.html
Copyright © 2011-2022 走看看