cs-self-learning/zh/必学工具/Emacs/index.html

24 lines
No EOL
48 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html><html lang=zh class=no-js> <head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><meta name=description content=CS自学指南><meta name=author content=PKUFlyingPig><link href=https://csdiy.wiki/zh/%E5%BF%85%E5%AD%A6%E5%B7%A5%E5%85%B7/Emacs/ rel=canonical><link rel=icon href=../../../images/favicon.ico><meta name=generator content="mkdocs-1.5.2, mkdocs-material-7.3.6"><title>Emacs - CS自学指南</title><link rel=stylesheet href=../../../assets/stylesheets/main.a57b2b03.min.css><link rel=stylesheet href=../../../assets/stylesheets/palette.3f5d1f46.min.css><link rel=preconnect href=https://fonts.gstatic.com crossorigin><link rel=stylesheet href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700%7CRoboto+Mono&display=fallback"><style>:root{--md-text-font-family:"Roboto";--md-code-font-family:"Roboto Mono"}</style><script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","G-KJB4RXSKZG"),document.addEventListener("DOMContentLoaded",function(){"undefined"!=typeof location$&&location$.subscribe(function(t){gtag("config","G-KJB4RXSKZG",{page_path:t.pathname})})})</script><script async src="https://www.googletagmanager.com/gtag/js?id=G-KJB4RXSKZG"></script></head> <body dir=ltr data-md-color-scheme=default data-md-color-primary=light-blue data-md-color-accent=deep-purple> <script>function __prefix(e){return new URL("../../..",location).pathname+"."+e}function __get(e,t=localStorage){return JSON.parse(t.getItem(__prefix(e)))}</script> <script>var palette=__get("__palette");if(null!==palette&&"object"==typeof palette.color)for(var key in palette.color)document.body.setAttribute("data-md-color-"+key,palette.color[key])</script> <input class=md-toggle data-md-toggle=drawer type=checkbox id=__drawer autocomplete=off> <input class=md-toggle data-md-toggle=search type=checkbox id=__search autocomplete=off> <label class=md-overlay for=__drawer></label> <div data-md-component=skip> <a href=#emacs class=md-skip> 跳转至 </a> </div> <div data-md-component=announce> </div> <header class=md-header data-md-component=header> <nav class="md-header__inner md-grid" aria-label=Header> <a href=../../ title=CS自学指南 class="md-header__button md-logo" aria-label=CS自学指南 data-md-component=logo> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54z"/></svg> </a> <label class="md-header__button md-icon" for=__drawer> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2z"/></svg> </label> <div class=md-header__title data-md-component=header-title> <div class=md-header__ellipsis> <div class=md-header__topic> <span class=md-ellipsis> CS自学指南 </span> </div> <div class=md-header__topic data-md-component=header-topic> <span class=md-ellipsis> Emacs </span> </div> </div> </div> <form class=md-header__option data-md-component=palette> <input class=md-option data-md-color-media="(prefers-color-scheme: light)" data-md-color-scheme=default data-md-color-primary=light-blue data-md-color-accent=deep-purple aria-label="Switch to dark mode" type=radio name=__palette id=__palette_1> <label class="md-header__button md-icon" title="Switch to dark mode" for=__palette_2 hidden> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M12 7a5 5 0 0 1 5 5 5 5 0 0 1-5 5 5 5 0 0 1-5-5 5 5 0 0 1 5-5m0 2a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3m0-7 2.39 3.42C13.65 5.15 12.84 5 12 5c-.84 0-1.65.15-2.39.42L12 2M3.34 7l4.16-.35A7.2 7.2 0 0 0 5.94 8.5c-.44.74-.69 1.5-.83 2.29L3.34 7m.02 10 1.76-3.77a7.131 7.131 0 0 0 2.38 4.14L3.36 17M20.65 7l-1.77 3.79a7.023 7.023 0 0 0-2.38-4.15l4.15.36m-.01 10-4.14.36c.59-.51 1.12-1.14 1.54-1.86.42-.73.69-1.5.83-2.29L20.64 17M12 22l-2.41-3.44c.74.27 1.55.44 2.41.44.82 0 1.63-.17 2.37-.44L12 22z"/></svg> </label> <input class=md-option data-md-color-media="(prefers-color-scheme: dark)" data-md-color-scheme=slate data-md-color-primary=cyan data-md-color-accent=deep-purple aria-label="Switch to light mode" type=radio name=__palette id=__palette_2> <label class="md-header__button md-icon" title="Switch to light mode" for=__palette_1 hidden> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="m17.75 4.09-2.53 1.94.91 3.06-2.63-1.81-2.63 1.81.91-3.06-2.53-1.94L12.44 4l1.06-3 1.06 3 3.19.09m3.5 6.91-1.64 1.25.59 1.98-1.7-1.17-1.7 1.17.59-1.98L15.75 11l2.06-.05L18.5 9l.69 1.95 2.06.05m-2.28 4.95c.83-.08 1.72 1.1 1.19 1.85-.32.45-.66.87-1.08 1.27C15.17 23 8.84 23 4.94 19.07c-3.91-3.9-3.91-10.24 0-14.14.4-.4.82-.76 1.27-1.08.75-.53 1.93.36 1.85 1.19-.27 2.86.69 5.83 2.89 8.02a9.96 9.96 0 0 0 8.02 2.89m-1.64 2.02a12.08 12.08 0 0 1-7.8-3.47c-2.17-2.19-3.33-5-3.49-7.82-2.81 3.14-2.7 7.96.31 10.98 3.02 3.01 7.84 3.12 10.98.31z"/></svg> </label> </form> <div class=md-header__option> <div class=md-select> <button class="md-header__button md-icon" aria-label="Select language"> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="m12.87 15.07-2.54-2.51.03-.03A17.52 17.52 0 0 0 14.07 6H17V4h-7V2H8v2H1v2h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04M18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12m-2.62 7 1.62-4.33L19.12 17h-3.24z"/></svg> </button> <div class=md-select__inner> <ul class=md-select__list> <li class=md-select__item> <a href=../../../%E5%BF%85%E5%AD%A6%E5%B7%A5%E5%85%B7/Emacs/ hreflang=zh class=md-select__link> 简体中文 </a> </li> <li class=md-select__item> <a href=../../../en/%E5%BF%85%E5%AD%A6%E5%B7%A5%E5%85%B7/Emacs/ hreflang=en class=md-select__link> English </a> </li> </ul> </div> </div> </div> <label class="md-header__button md-icon" for=__search> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg> </label> <div class=md-search data-md-component=search role=dialog> <label class=md-search__overlay for=__search></label> <div class=md-search__inner role=search> <form class=md-search__form name=search> <input type=text class=md-search__input name=query aria-label=搜索 placeholder=搜索 autocapitalize=off autocorrect=off autocomplete=off spellcheck=false data-md-component=search-query required> <label class="md-search__icon md-icon" for=__search> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg> </label> <nav class=md-search__options aria-label=Search> <a href=javascript:void(0) class="md-search__icon md-icon" aria-label=Share data-clipboard data-clipboard-text data-md-component=search-share tabindex=-1> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7 0-.24-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9a3 3 0 0 0-3 3 3 3 0 0 0 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.15c-.05.21-.08.43-.08.66 0 1.61 1.31 2.91 2.92 2.91 1.61 0 2.92-1.3 2.92-2.91A2.92 2.92 0 0 0 18 16.08z"/></svg> </a> <button type=reset class="md-search__icon md-icon" aria-label=Clear tabindex=-1> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"/></svg> </button> </nav> <div class=md-search__suggest data-md-component=search-suggest></div> </form> <div class=md-search__output> <div class=md-search__scrollwrap data-md-scrollfix> <div class=md-search-result data-md-component=search-result> <div class=md-search-result__meta> 正在初始化搜索引擎 </div> <ol class=md-search-result__list></ol> </div> </div> </div> </div> </div> <div class=md-header__source> <a href=https://github.com/pkuflyingpig/cs-self-learning/ title=前往仓库 class=md-source data-md-component=source> <div class="md-source__icon md-icon"> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 496 512"><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg> </div> <div class=md-source__repository> cs-self-learning </div> </a> </div> </nav> </header> <div class=md-container data-md-component=container> <main class=md-main data-md-component=main> <div class="md-main__inner md-grid"> <div class="md-sidebar md-sidebar--primary" data-md-component=sidebar data-md-type=navigation> <div class=md-sidebar__scrollwrap> <div class=md-sidebar__inner> <nav class="md-nav md-nav--primary" aria-label=Navigation data-md-level=0> <label class=md-nav__title for=__drawer> <a href=../../ title=CS自学指南 class="md-nav__button md-logo" aria-label=CS自学指南 data-md-component=logo> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54z"/></svg> </a> CS自学指南 </label> <div class=md-nav__source> <a href=https://github.com/pkuflyingpig/cs-self-learning/ title=前往仓库 class=md-source data-md-component=source> <div class="md-source__icon md-icon"> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 496 512"><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg> </div> <div class=md-source__repository> cs-self-learning </div> </a> </div> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../ class=md-nav__link> 前言 </a> </li> <li class=md-nav__item> <a href=../../%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/ class=md-nav__link> 如何使用这本书 </a> </li> <li class=md-nav__item> <a href=../../CS%E5%AD%A6%E4%B9%A0%E8%A7%84%E5%88%92/ class=md-nav__link> 一个仅供参考的CS学习规划 </a> </li> <li class="md-nav__item md-nav__item--active md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_4 type=checkbox id=__nav_4 checked> <label class=md-nav__link for=__nav_4> 必学工具 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=必学工具 data-md-level=1> <label class=md-nav__title for=__nav_4> <span class="md-nav__icon md-icon"></span> 必学工具 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../%E7%BF%BB%E5%A2%99/ class=md-nav__link> 翻墙 </a> </li> <li class=md-nav__item> <a href=../Vim/ class=md-nav__link> Vim </a> </li> <li class="md-nav__item md-nav__item--active"> <input class="md-nav__toggle md-toggle" data-md-toggle=toc type=checkbox id=__toc> <label class="md-nav__link md-nav__link--active" for=__toc> Emacs <span class="md-nav__icon md-icon"></span> </label> <a href=./ class="md-nav__link md-nav__link--active"> Emacs </a> <nav class="md-nav md-nav--secondary" aria-label=目录> <label class=md-nav__title for=__toc> <span class="md-nav__icon md-icon"></span> 目录 </label> <ul class=md-nav__list data-md-component=toc data-md-scrollfix> <li class=md-nav__item> <a href=#emacs_1 class=md-nav__link> 为什么学习 Emacs </a> </li> <li class=md-nav__item> <a href=#emacs_2 class=md-nav__link> 如何学习 Emacs </a> </li> <li class=md-nav__item> <a href=#_1 class=md-nav__link> 关于键位映射 </a> </li> </ul> </nav> </li> <li class=md-nav__item> <a href=../Git/ class=md-nav__link> Git </a> </li> <li class=md-nav__item> <a href=../GitHub/ class=md-nav__link> GitHub </a> </li> <li class=md-nav__item> <a href=../GNU_Make/ class=md-nav__link> GNU Make </a> </li> <li class=md-nav__item> <a href=../CMake/ class=md-nav__link> CMake </a> </li> <li class=md-nav__item> <a href=../LaTeX/ class=md-nav__link> LaTeX </a> </li> <li class=md-nav__item> <a href=../Docker/ class=md-nav__link> Docker </a> </li> <li class=md-nav__item> <a href=../Scoop/ class=md-nav__link> Scoop </a> </li> <li class=md-nav__item> <a href=../workflow/ class=md-nav__link> 日常学习工作流 </a> </li> <li class=md-nav__item> <a href=../tools/ class=md-nav__link> 实用工具箱 </a> </li> <li class=md-nav__item> <a href=../thesis/ class=md-nav__link> 毕业论文 </a> </li> <li class=md-nav__item> <a href=../%E4%BF%A1%E6%81%AF%E6%A3%80%E7%B4%A2/ class=md-nav__link> 信息检索 </a> </li> </ul> </nav> </li> <li class=md-nav__item> <a href=../../%E5%A5%BD%E4%B9%A6%E6%8E%A8%E8%8D%90/ class=md-nav__link> 好书推荐 </a> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_6 type=checkbox id=__nav_6> <label class=md-nav__link for=__nav_6> 数学基础 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=数学基础 data-md-level=1> <label class=md-nav__title for=__nav_6> <span class="md-nav__icon md-icon"></span> 数学基础 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E6%95%B0%E5%AD%A6%E5%9F%BA%E7%A1%80/MITmaths/ class=md-nav__link> MIT18.01/18.02: Calculus </a> </li> <li class=md-nav__item> <a href=../../%E6%95%B0%E5%AD%A6%E5%9F%BA%E7%A1%80/MITLA/ class=md-nav__link> MIT18.06: Linear Algebra </a> </li> <li class=md-nav__item> <a href=../../%E6%95%B0%E5%AD%A6%E5%9F%BA%E7%A1%80/information/ class=md-nav__link> MIT6.050J: Information theory and Entropy </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_7 type=checkbox id=__nav_7> <label class=md-nav__link for=__nav_7> 数学进阶 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=数学进阶 data-md-level=1> <label class=md-nav__title for=__nav_7> <span class="md-nav__icon md-icon"></span> 数学进阶 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E6%95%B0%E5%AD%A6%E8%BF%9B%E9%98%B6/CS70/ class=md-nav__link> UCB CS70: discrete Math and probability theory </a> </li> <li class=md-nav__item> <a href=../../%E6%95%B0%E5%AD%A6%E8%BF%9B%E9%98%B6/CS126/ class=md-nav__link> UCB CS126: probability theory </a> </li> <li class=md-nav__item> <a href=../../%E6%95%B0%E5%AD%A6%E8%BF%9B%E9%98%B6/6.042J/ class=md-nav__link> MIT 6.042J: Mathematics for Computer Science </a> </li> <li class=md-nav__item> <a href=../../%E6%95%B0%E5%AD%A6%E8%BF%9B%E9%98%B6/numerical/ class=md-nav__link> MIT18.330: Introduction to numerical analysis </a> </li> <li class=md-nav__item> <a href=../../%E6%95%B0%E5%AD%A6%E8%BF%9B%E9%98%B6/convex/ class=md-nav__link> Standford EE364A: Convex Optimization </a> </li> <li class=md-nav__item> <a href=../../%E6%95%B0%E5%AD%A6%E8%BF%9B%E9%98%B6/The_Information_Theory_Pattern_Recognition_and_Neural_Networks/ class=md-nav__link> The Information Theory, Pattern Recognition, and Neural Networks </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_8 type=checkbox id=__nav_8> <label class=md-nav__link for=__nav_8> 编程入门 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=编程入门 data-md-level=1> <label class=md-nav__title for=__nav_8> <span class="md-nav__icon md-icon"></span> 编程入门 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/MIT-Missing-Semester/ class=md-nav__link> MIT-Missing-Semester </a> </li> <li class=md-nav__item> <a href=../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/DeCal/ class=md-nav__link> Sysadmin DeCal </a> </li> <li class=md-nav__item> <a href=../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/CS50/ class=md-nav__link> Harvard CS50: This is CS50x </a> </li> <li class=md-nav__item> <a href=../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/CS50P/ class=md-nav__link> CS50P: CS50's Introduction to Programming with Python </a> </li> <li class=md-nav__item> <a href=../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/CS61A/ class=md-nav__link> UCB CS61A: Structure and Interpretation of Computer Programs </a> </li> <li class=md-nav__item> <a href=../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/Duke-Coursera-Intro-C/ class=md-nav__link> Duke University: Introductory C Programming Specialization </a> </li> <li class=md-nav__item> <a href=../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/CS106B_CS106X/ class=md-nav__link> Stanford CS106B/X </a> </li> <li class=md-nav__item> <a href=../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/CS106L/ class=md-nav__link> Stanford CS106L: Standard C++ Programming </a> </li> <li class=md-nav__item> <a href=../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/CS110L/ class=md-nav__link> Stanford CS110L: Safety in Systems Programming </a> </li> <li class=md-nav__item> <a href=../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/AUT1400/ class=md-nav__link> AmirKabir University of Technology AP1400-2: Advanced Programming </a> </li> <li class=md-nav__item> <a href=../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/Haskell-MOOC/ class=md-nav__link> Haskell MOOC </a> </li> <li class=md-nav__item> <a href=../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/CS3110/ class=md-nav__link> Cornell CS3110: OCaml Programming Correct + Efficient + Beautiful </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_9 type=checkbox id=__nav_9> <label class=md-nav__link for=__nav_9> 电子基础 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=电子基础 data-md-level=1> <label class=md-nav__title for=__nav_9> <span class="md-nav__icon md-icon"></span> 电子基础 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E7%94%B5%E5%AD%90%E5%9F%BA%E7%A1%80/EE16/ class=md-nav__link> EE16A&B: Designing Information Devices and Systems I&II </a> </li> <li class=md-nav__item> <a href=../../%E7%94%B5%E5%AD%90%E5%9F%BA%E7%A1%80/signal/ class=md-nav__link> UCB EE120 : Signal and Systems </a> </li> <li class=md-nav__item> <a href=../../%E7%94%B5%E5%AD%90%E5%9F%BA%E7%A1%80/Signals_and_Systems_AVO/ class=md-nav__link> MIT 6.007 Signals and Systems </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_10 type=checkbox id=__nav_10> <label class=md-nav__link for=__nav_10> 数据结构与算法 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=数据结构与算法 data-md-level=1> <label class=md-nav__title for=__nav_10> <span class="md-nav__icon md-icon"></span> 数据结构与算法 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%E4%B8%8E%E7%AE%97%E6%B3%95/CS61B/ class=md-nav__link> UCB CS61B: Data Structures and Algorithms </a> </li> <li class=md-nav__item> <a href=../../%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%E4%B8%8E%E7%AE%97%E6%B3%95/Algo/ class=md-nav__link> Coursera: Algorithms I & II </a> </li> <li class=md-nav__item> <a href=../../%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%E4%B8%8E%E7%AE%97%E6%B3%95/6.006/ class=md-nav__link> MIT 6.006: Introduction to Algorithms </a> </li> <li class=md-nav__item> <a href=../../%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%E4%B8%8E%E7%AE%97%E6%B3%95/6.046/ class=md-nav__link> MIT 6.046: Design and Analysis of Algorithms </a> </li> <li class=md-nav__item> <a href=../../%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%E4%B8%8E%E7%AE%97%E6%B3%95/CS170/ class=md-nav__link> UCB CS170: Efficient Algorithms and Intractable Problems </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_11 type=checkbox id=__nav_11> <label class=md-nav__link for=__nav_11> 软件工程 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=软件工程 data-md-level=1> <label class=md-nav__title for=__nav_11> <span class="md-nav__icon md-icon"></span> 软件工程 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B/6031/ class=md-nav__link> MIT 6.031: Software Construction </a> </li> <li class=md-nav__item> <a href=../../%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B/CS169/ class=md-nav__link> UCB CS169: software engineering </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_12 type=checkbox id=__nav_12> <label class=md-nav__link for=__nav_12> 体系结构 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=体系结构 data-md-level=1> <label class=md-nav__title for=__nav_12> <span class="md-nav__icon md-icon"></span> 体系结构 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E4%BD%93%E7%B3%BB%E7%BB%93%E6%9E%84/N2T/ class=md-nav__link> Coursera: Nand2Tetris </a> </li> <li class=md-nav__item> <a href=../../%E4%BD%93%E7%B3%BB%E7%BB%93%E6%9E%84/CS61C/ class=md-nav__link> UCB CS61C: Great Ideas in Computer Architecture </a> </li> <li class=md-nav__item> <a href=../../%E4%BD%93%E7%B3%BB%E7%BB%93%E6%9E%84/CSAPP/ class=md-nav__link> CMU 15-213: CSAPP </a> </li> <li class=md-nav__item> <a href=../../%E4%BD%93%E7%B3%BB%E7%BB%93%E6%9E%84/DDCA/ class=md-nav__link> ETHz: Digital Design and Computer Architecture </a> </li> <li class=md-nav__item> <a href=../../%E4%BD%93%E7%B3%BB%E7%BB%93%E6%9E%84/CA/ class=md-nav__link> ETHz: Computer Architecture </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_13 type=checkbox id=__nav_13> <label class=md-nav__link for=__nav_13> 操作系统 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=操作系统 data-md-level=1> <label class=md-nav__title for=__nav_13> <span class="md-nav__icon md-icon"></span> 操作系统 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/MIT6.S081/ class=md-nav__link> MIT 6.S081: Operating System Engineering </a> </li> <li class=md-nav__item> <a href=../../%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/CS162/ class=md-nav__link> UCB CS162: Operating System </a> </li> <li class=md-nav__item> <a href=../../%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/NJUOS/ class=md-nav__link> NJU OS: Operating System Design and Implementation </a> </li> <li class=md-nav__item> <a href=../../%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/HITOS/ class=md-nav__link> HIT OS: Operating System </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_14 type=checkbox id=__nav_14> <label class=md-nav__link for=__nav_14> 并行与分布式系统 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=并行与分布式系统 data-md-level=1> <label class=md-nav__title for=__nav_14> <span class="md-nav__icon md-icon"></span> 并行与分布式系统 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E5%B9%B6%E8%A1%8C%E4%B8%8E%E5%88%86%E5%B8%83%E5%BC%8F%E7%B3%BB%E7%BB%9F/CS149/ class=md-nav__link> CMU 15-418/Stanford CS149: Parallel Computing </a> </li> <li class=md-nav__item> <a href=../../%E5%B9%B6%E8%A1%8C%E4%B8%8E%E5%88%86%E5%B8%83%E5%BC%8F%E7%B3%BB%E7%BB%9F/MIT6.824/ class=md-nav__link> MIT 6.824: Distributed System </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_15 type=checkbox id=__nav_15> <label class=md-nav__link for=__nav_15> 计算机系统安全 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=计算机系统安全 data-md-level=1> <label class=md-nav__title for=__nav_15> <span class="md-nav__icon md-icon"></span> 计算机系统安全 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E7%B3%BB%E7%BB%9F%E5%AE%89%E5%85%A8/CS161/ class=md-nav__link> UCB CS161: Computer Security </a> </li> <li class=md-nav__item> <a href=../../%E7%B3%BB%E7%BB%9F%E5%AE%89%E5%85%A8/MIT6.858/ class=md-nav__link> MIT 6.858: Computer System Security </a> </li> <li class=md-nav__item> <a href=../../%E7%B3%BB%E7%BB%9F%E5%AE%89%E5%85%A8/CSE365/ class=md-nav__link> ASU CSE365: Introduction to Cybersecurity </a> </li> <li class=md-nav__item> <a href=../../%E7%B3%BB%E7%BB%9F%E5%AE%89%E5%85%A8/CSE466/ class=md-nav__link> ASU CSE466: Computer Systems Security </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_16 type=checkbox id=__nav_16> <label class=md-nav__link for=__nav_16> 计算机网络 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=计算机网络 data-md-level=1> <label class=md-nav__title for=__nav_16> <span class="md-nav__icon md-icon"></span> 计算机网络 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/topdown_ustc/ class=md-nav__link> USTC Computer Networking:A Top-Down Approach </a> </li> <li class=md-nav__item> <a href=../../%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/topdown/ class=md-nav__link> Computer Networking: A Top-Down Approach </a> </li> <li class=md-nav__item> <a href=../../%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/CS144/ class=md-nav__link> Stanford CS144: Computer Network </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_17 type=checkbox id=__nav_17> <label class=md-nav__link for=__nav_17> 数据库系统 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=数据库系统 data-md-level=1> <label class=md-nav__title for=__nav_17> <span class="md-nav__icon md-icon"></span> 数据库系统 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E6%95%B0%E6%8D%AE%E5%BA%93%E7%B3%BB%E7%BB%9F/CS186/ class=md-nav__link> UCB CS186: Introduction to Database System </a> </li> <li class=md-nav__item> <a href=../../%E6%95%B0%E6%8D%AE%E5%BA%93%E7%B3%BB%E7%BB%9F/15445/ class=md-nav__link> CMU 15-445: Database Systems </a> </li> <li class=md-nav__item> <a href=../../%E6%95%B0%E6%8D%AE%E5%BA%93%E7%B3%BB%E7%BB%9F/CS122/ class=md-nav__link> Caltech CS122: Database System Implementation </a> </li> <li class=md-nav__item> <a href=../../%E6%95%B0%E6%8D%AE%E5%BA%93%E7%B3%BB%E7%BB%9F/CS346/ class=md-nav__link> Stanford CS346: Database System Implementation </a> </li> <li class=md-nav__item> <a href=../../%E6%95%B0%E6%8D%AE%E5%BA%93%E7%B3%BB%E7%BB%9F/15799/ class=md-nav__link> CMU 15-799: Special Topics in Database Systems </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_18 type=checkbox id=__nav_18> <label class=md-nav__link for=__nav_18> 编译原理 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=编译原理 data-md-level=1> <label class=md-nav__title for=__nav_18> <span class="md-nav__icon md-icon"></span> 编译原理 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E7%BC%96%E8%AF%91%E5%8E%9F%E7%90%86/CS143/ class=md-nav__link> Stanford CS143: Compilers </a> </li> <li class=md-nav__item> <a href=../../%E7%BC%96%E8%AF%91%E5%8E%9F%E7%90%86/NJU-SoftwareAnalysis/ class=md-nav__link> NJU 软件分析 </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_19 type=checkbox id=__nav_19> <label class=md-nav__link for=__nav_19> 程序语言设计 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=程序语言设计 data-md-level=1> <label class=md-nav__title for=__nav_19> <span class="md-nav__icon md-icon"></span> 程序语言设计 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E7%A8%8B%E5%BA%8F%E8%AF%AD%E8%A8%80%E8%AE%BE%E8%AE%A1/CS242/ class=md-nav__link> Stanford CS242: Programming Languages </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_20 type=checkbox id=__nav_20> <label class=md-nav__link for=__nav_20> 计算机图形学 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=计算机图形学 data-md-level=1> <label class=md-nav__title for=__nav_20> <span class="md-nav__icon md-icon"></span> 计算机图形学 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%9B%BE%E5%BD%A2%E5%AD%A6/GAMES101/ class=md-nav__link> GAMES101 </a> </li> <li class=md-nav__item> <a href=../../%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%9B%BE%E5%BD%A2%E5%AD%A6/GAMES202/ class=md-nav__link> GAMES202 </a> </li> <li class=md-nav__item> <a href=../../%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%9B%BE%E5%BD%A2%E5%AD%A6/GAMES103/ class=md-nav__link> GAMES103 </a> </li> <li class=md-nav__item> <a href=../../%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%9B%BE%E5%BD%A2%E5%AD%A6/CS148/ class=md-nav__link> Stanford CS148 </a> </li> <li class=md-nav__item> <a href=../../%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%9B%BE%E5%BD%A2%E5%AD%A6/15462/ class=md-nav__link> CMU 15-462 </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_21 type=checkbox id=__nav_21> <label class=md-nav__link for=__nav_21> Web开发 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=Web开发 data-md-level=1> <label class=md-nav__title for=__nav_21> <span class="md-nav__icon md-icon"></span> Web开发 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../Web%E5%BC%80%E5%8F%91/mitweb/ class=md-nav__link> MIT web development course </a> </li> <li class=md-nav__item> <a href=../../Web%E5%BC%80%E5%8F%91/CS142/ class=md-nav__link> Stanford CS142: Web Applications </a> </li> <li class=md-nav__item> <a href=../../Web%E5%BC%80%E5%8F%91/fullstackopen/ class=md-nav__link> University of Helsinki: Full Stack open 2022 </a> </li> <li class=md-nav__item> <a href=../../Web%E5%BC%80%E5%8F%91/CS571/ class=md-nav__link> CS571 Building UI (React & React Native) </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_22 type=checkbox id=__nav_22> <label class=md-nav__link for=__nav_22> 数据科学 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=数据科学 data-md-level=1> <label class=md-nav__title for=__nav_22> <span class="md-nav__icon md-icon"></span> 数据科学 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E6%95%B0%E6%8D%AE%E7%A7%91%E5%AD%A6/Data100/ class=md-nav__link> UCB Data100: Principles and Techniques of Data Science </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_23 type=checkbox id=__nav_23> <label class=md-nav__link for=__nav_23> 人工智能 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=人工智能 data-md-level=1> <label class=md-nav__title for=__nav_23> <span class="md-nav__icon md-icon"></span> 人工智能 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/CS50/ class=md-nav__link> Harvard CS50's Introduction to AI with Python </a> </li> <li class=md-nav__item> <a href=../../%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/CS188/ class=md-nav__link> UCB CS188: Introduction to Artificial Intelligence </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_24 type=checkbox id=__nav_24> <label class=md-nav__link for=__nav_24> 机器学习 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=机器学习 data-md-level=1> <label class=md-nav__title for=__nav_24> <span class="md-nav__icon md-icon"></span> 机器学习 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/ML/ class=md-nav__link> Coursera: Machine Learning </a> </li> <li class=md-nav__item> <a href=../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/CS229/ class=md-nav__link> Stanford CS229: Machine Learning </a> </li> <li class=md-nav__item> <a href=../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/CS189/ class=md-nav__link> UCB CS189: Introduction to Machine Learning </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_25 type=checkbox id=__nav_25> <label class=md-nav__link for=__nav_25> 机器学习系统 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=机器学习系统 data-md-level=1> <label class=md-nav__title for=__nav_25> <span class="md-nav__icon md-icon"></span> 机器学习系统 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E7%B3%BB%E7%BB%9F/AICS/ class=md-nav__link> 智能计算系统 </a> </li> <li class=md-nav__item> <a href=../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E7%B3%BB%E7%BB%9F/CMU10-414/ class=md-nav__link> CMU 10-414/714: Deep Learning Systems </a> </li> <li class=md-nav__item> <a href=../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E7%B3%BB%E7%BB%9F/MLC/ class=md-nav__link> Machine Learning Compilation </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_26 type=checkbox id=__nav_26> <label class=md-nav__link for=__nav_26> 深度学习 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=深度学习 data-md-level=1> <label class=md-nav__title for=__nav_26> <span class="md-nav__icon md-icon"></span> 深度学习 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/EECS498-007/ class=md-nav__link> UMich EECS 498-007 / 598-005: Deep Learning for Computer Vision </a> </li> <li class=md-nav__item> <a href=../../%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/CS230/ class=md-nav__link> Coursera: Deep Learning </a> </li> <li class=md-nav__item> <a href=../../%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/LHY/ class=md-nav__link> 国立台湾大学:李宏毅机器学习 </a> </li> <li class=md-nav__item> <a href=../../%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/CS231/ class=md-nav__link> Stanford CS231n: CNN for Visual Recognition </a> </li> <li class=md-nav__item> <a href=../../%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/CS224n/ class=md-nav__link> Stanford CS224n: Natural Language Processing </a> </li> <li class=md-nav__item> <a href=../../%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/CS224w/ class=md-nav__link> Stanford CS224w: Machine Learning with Graphs </a> </li> <li class=md-nav__item> <a href=../../%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/CS285/ class=md-nav__link> UCB CS285: Deep Reinforcement Learning </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=__nav_27 type=checkbox id=__nav_27> <label class=md-nav__link for=__nav_27> 机器学习进阶 <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=机器学习进阶 data-md-level=1> <label class=md-nav__title for=__nav_27> <span class="md-nav__icon md-icon"></span> 机器学习进阶 </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%BF%9B%E9%98%B6/roadmap/ class=md-nav__link> 进阶路线图 </a> </li> <li class=md-nav__item> <a href=../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%BF%9B%E9%98%B6/CMU10-708/ class=md-nav__link> CMU 10-708: Probabilistic Graphical Models </a> </li> <li class=md-nav__item> <a href=../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%BF%9B%E9%98%B6/STAT8201/ class=md-nav__link> Columbia STAT 8201: Deep Generative Models </a> </li> <li class=md-nav__item> <a href=../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%BF%9B%E9%98%B6/STA4273/ class=md-nav__link> U Toronto STA 4273 Winter 2021: Minimizing Expectations </a> </li> <li class=md-nav__item> <a href=../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%BF%9B%E9%98%B6/CS229M/ class=md-nav__link> Stanford STATS214 / CS229M: Machine Learning Theory </a> </li> </ul> </nav> </li> <li class=md-nav__item> <a href=../../%E5%90%8E%E8%AE%B0/ class=md-nav__link> 后记 </a> </li> </ul> </nav> </div> </div> </div> <div class="md-sidebar md-sidebar--secondary" data-md-component=sidebar data-md-type=toc> <div class=md-sidebar__scrollwrap> <div class=md-sidebar__inner> <nav class="md-nav md-nav--secondary" aria-label=目录> <label class=md-nav__title for=__toc> <span class="md-nav__icon md-icon"></span> 目录 </label> <ul class=md-nav__list data-md-component=toc data-md-scrollfix> <li class=md-nav__item> <a href=#emacs_1 class=md-nav__link> 为什么学习 Emacs </a> </li> <li class=md-nav__item> <a href=#emacs_2 class=md-nav__link> 如何学习 Emacs </a> </li> <li class=md-nav__item> <a href=#_1 class=md-nav__link> 关于键位映射 </a> </li> </ul> </nav> </div> </div> </div> <div class=md-content data-md-component=content> <article class="md-content__inner md-typeset"> <a href=https://github.com/pkuflyingpig/cs-self-learning/edit/master/docs/必学工具/Emacs.md title=编辑此页 class="md-content__button md-icon"> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M20.71 7.04c.39-.39.39-1.04 0-1.41l-2.34-2.34c-.37-.39-1.02-.39-1.41 0l-1.84 1.83 3.75 3.75M3 17.25V21h3.75L17.81 9.93l-3.75-3.75L3 17.25z"/></svg> </a> <h1 id=emacs>Emacs</h1> <h2 id=emacs_1>为什么学习 Emacs</h2> <p>Emacs 是一个与 Vim 齐名的强大编辑器,事实上 Emacs 几乎具有 Vim 的所有好处,例如:</p> <ul> <li>只需要键盘就可以完成所有操作,大量使用快捷键,具有极高的编辑效率。</li> <li>既可以在终端无图形界面的场景下使用,也可使用有图形界面的版本获得更现代、更美观的体验。</li> </ul> <p>此外Emacs 与其它大部分编辑器最大的不同就在于其强大的扩展性。Emacs 的内核没有对用户做出任何限制,使用 Emacs Lisp 编程语言可以为 Emacs 编写任意逻辑的插件来扩展 Emacs 的功能。经过几十年的积累Emacs 的插件生态可谓编辑器中最为丰富和强大的生态之一。有一种说法是“Emacs 表面上是个编辑器,其实是一个操作系统”。只要稍作学习,你也可以编写属于自己的 Emacs 扩展。</p> <p>Emacs 对 Vim 用户也十分友好,有一个叫 <a href=https://github.com/emacs-evil/evil>evil</a> 的插件可以让用户在 Emacs 中使用 Vim 的基本操作,只需要很低的迁移成本即可从 Vim 转到 Emacs。曾经有统计显示有相当一部分用户会从 Vim 转到 Emacs但几乎没有用户从 Emacs 转到 Vim。事实上Emacs 相对 Vim 最大的不足是纯文本编辑方面不如 Vim 的多模态编辑效率高但凭借其强大的扩展性Emacs 可以扬长避短,把 Vim 吸收进来,结合了二者的长处。</p> <h2 id=emacs_2>如何学习 Emacs</h2> <p>与 Vim 相同Emacs 的学习曲线也比较陡峭,但一旦理解了 Emacs 的使用逻辑,就会爱不释手。然而,网上的 Emacs 资料大多不细致、不够准确,甚至有哗众取宠的嫌疑。</p> <p>这里给大家推荐一个较新的中文教程<a href=https://www.zhihu.com/column/c_1440829147212279808>《专业 Emacs 入门》</a>,这篇教程比较系统和全面,且讲述相对比较耐心细致,在讲解 Emacs 基本逻辑的同时也给出了成套的插件推荐,读完后可以获得一个功能完善的、接近 IDE 的 Emacs因此值得一读。学完教程只是刚刚开始学会之后要经常使用在使用中遇到问题勤于搜索和思考最终才能得心应手。</p> <h2 id=_1>关于键位映射</h2> <p>Emacs 的唯一缺点便是对 Ctrl 键的使用过多,对小手指不是很友好,强烈建议更改 Ctrl 键的键盘映射。更改映射的方式与 <a href=../Vim/ >Vim 教程</a>中的方法相同,这里不做赘述。</p> <hr> <div class=md-source-date> <small> 最后更新: <span class="git-revision-date-localized-plugin git-revision-date-localized-plugin-date">April 11, 2023</span> </small> </div> <script src=https://giscus.app/client.js data-repo=PKUFlyingPig/cs-self-learning data-repo-id=R_kgDOGP67ng data-category=Announcements data-category-id=DIC_kwDOGP67ns4COM9Q data-mapping=title data-reactions-enabled=1 data-emit-metadata=0 data-input-position=top data-theme=light_protanopia data-lang=zh-CN data-loading=lazy crossorigin=anonymous async>
</script> <script>
var palette = __get("__palette")
if (palette && typeof palette.color === "object") {
if (palette.color.scheme === "slate") {
const giscus = document.querySelector("script[src*=giscus]")
giscus.setAttribute("data-theme", "dark_protanopia")
}
}
document.addEventListener("DOMContentLoaded", function () {
const ref = document.querySelector("[data-md-component=palette]")
ref.addEventListener("change", function () {
var palette = __get("__palette")
if (palette && typeof palette.color === "object") {
const theme = palette.color.scheme === "slate" ? "dark_protanopia" : "light_protanopia"
const frame = document.querySelector(".giscus-frame")
frame.contentWindow.postMessage({
giscus: { setConfig: { theme } }
}, "https://giscus.app")
}
})
})
</script> </article> </div> </div> <a href=# class="md-top md-icon" data-md-component=top data-md-state=hidden> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8v12z"/></svg> Back to top </a> </main> <footer class=md-footer> <nav class="md-footer__inner md-grid" aria-label=Footer> <a href=../Vim/ class="md-footer__link md-footer__link--prev" aria-label="上一页: Vim" rel=prev> <div class="md-footer__button md-icon"> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg> </div> <div class=md-footer__title> <div class=md-ellipsis> <span class=md-footer__direction> 上一页 </span> Vim </div> </div> </a> <a href=../Git/ class="md-footer__link md-footer__link--next" aria-label="下一页: Git" rel=next> <div class=md-footer__title> <div class=md-ellipsis> <span class=md-footer__direction> 下一页 </span> Git </div> </div> <div class="md-footer__button md-icon"> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M4 11v2h12l-5.5 5.5 1.42 1.42L19.84 12l-7.92-7.92L10.5 5.5 16 11H4z"/></svg> </div> </a> </nav> <div class="md-footer-meta md-typeset"> <div class="md-footer-meta__inner md-grid"> <div class=md-footer-copyright> <div class=md-footer-copyright__highlight> Copyright &copy; 2021-present <a href=https://github.com/PKUFlyingPig target=_blank rel="noopener noreferrer">PKUFlyingPig</a> </div> Made with <a href=https://squidfunk.github.io/mkdocs-material/ target=_blank rel=noopener> Material for MkDocs </a> </div> <div class=md-footer-social> <a href=https://github.com/pkuflyingpig/cs-self-learning/ target=_blank rel=noopener title=github.com class=md-footer-social__link> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 496 512"><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg> </a> </div> </div> </div> </footer> </div> <div class=md-dialog data-md-component=dialog> <div class="md-dialog__inner md-typeset"></div> </div> <script id=__config type=application/json>{"base": "../../..", "features": ["header.autohide", "navigation.tracking", "navigation.top", "search.highlight", "search.share", "search.suggest", "content.code.annotate"], "search": "../../../assets/javascripts/workers/search.fcfe8b6d.min.js", "translations": {"clipboard.copied": "\u5df2\u590d\u5236", "clipboard.copy": "\u590d\u5236", "search.config.lang": "ja", "search.config.pipeline": "trimmer, stemmer", "search.config.separator": "[\\uff0c\\u3002]+", "search.placeholder": "\u641c\u7d22", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "\u6ca1\u6709\u627e\u5230\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.one": "\u627e\u5230 1 \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.other": "# \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.placeholder": "\u952e\u5165\u4ee5\u5f00\u59cb\u641c\u7d22", "search.result.term.missing": "Missing", "select.version.title": "Select version"}, "version": null}</script> <script src=../../../assets/javascripts/bundle.b1047164.min.js></script> </body> </html>