像寫代碼一樣寫作 – 小眾軟件

本文來自討論組,由 @Rackar 發布,非常有意思的一篇文章。由兩部分組成:VS Code 和 Git。

在這個帖子裡提到便捷的文字編輯器,想找個記事本軟件換掉notepad++(具體需求內詳)我說準備寫一篇介紹 VS Code 的文章。現在寫完一部分,放上來聽聽大家的看法。

文章原文放在我的博客裡。


前言

我不清楚文字工作者普遍使用什麼工具來進行寫作,猜測常規的可能以 Word 為主,純文字的可能主要在 txt, notepadd++ 等小巧文字編輯器裡,然後再使用別的工具排版和美化。

我介紹一下程序員寫代碼的工具,給大家借鑒一下。用這些工具主要解決以下問題:

  1. 忘記保存、以及貓咬點線,錯按關機等,導致內容不慎丟失這種喜聞樂見的劇情。
  2. 多版本管理。最終版 .doc,不改了最終版,不改了最終版 V233。修改歷史不好管理,對比不直觀。
  3. 設備同步。公司寫完想在家裡修改需要同步工具或者拷過去拷回來。
  4. 多人協作。
  5. 強大的插件和擴展工具庫。

為了提高(偷)效率(懶),程序員們在自用工具改善上的動力和創意是無窮的,畢竟偷懶是第一生產力。

而本身作為代碼編寫者,和文章作者是有很多類似需求的。所以即使有些用法顯得有一點門檻,但還是希望大家勇敢嘗試一下,會發現這些玩意的妙處。

我要介紹的最主要的工具就是 VS Code 和 Git。都是跨平台軟件。寫作推薦使用 Markdown 格式,專注於編寫,同時又能做到輕量排版。如果不想本機安裝軟件也可以使用這個在線編輯器,或者簡書來使用瀏覽器在線編寫和保存 Markdown 文件。

10 秒 Markdown

Markdown 語法裡面,先用最基礎的這幾個就能流暢的寫作了:

#  一级标题

## 二级标题

[标题](链接地址)

![图片描述](图片链接地址)

*斜体*

**粗体**

也就是說,編寫後綴名為 .md 的文本文件,在文字中間加一些約定的小標記,就能在各種網站和工具裡看到排版後的效果。

比如現在這段源文件和他的預覽:

像寫代碼一樣寫作 2
圖1:Markdown 預覽

剩下語法和標記的在使用的過程中再查就可以。比如序列、引用、代碼塊,以及待辦列表、流程圖、公式等更複雜的功能。

VS Code

全名 Visual Studio Code,是微軟出品的跨平台輕量級代碼編輯器。外觀長這樣:

像寫代碼一樣寫作 3

軟件打開非常快,Windows, Mac, Linux 都可以使用,還有無數插件可直接搜索安裝(安插件都不用重啟你敢信),滿足你各種奇 ♂ 怪 ♀ 的需求。

下載安裝

Windows 版下載地址,其他版本從官網選擇 Stable 版本下載

然後直接默認安裝就好。

界面介紹

使用文件 → 打開文件夾定位到文章目錄中。

像寫代碼一樣寫作 4

左側主要的 4 個按鈕就是資源管理器搜索版本控制插件。如圖現在顯示的資源管理器。可以看到編輯器中打開了哪些文件,當前目錄文件樹和所編輯文件大綱。

搜索就更厲害了,可以直接定位到哪個目錄下哪個文件的第幾行。

像寫代碼一樣寫作 5

版本控制我們放後面說。先看下插件。

安裝插件

只要在左邊欄點擊 Extensions,輸入要搜索的關鍵詞,就可以瀏覽查看各種插件的介紹和視頻圖片。點擊 Install 安裝插件。

個人推薦的幾個基礎插件:

插件名 功能 用法
Chinese (Simplified) Language
Pack for VS Code
Vs Code 漢化 安裝加載即可漢化界面
Git History 查看歷史版本 點擊右上角或者右鍵查看
Prettier – Code formatter 自動格式美化 可設置保存時自動去除多餘行,補上標點和空格等
Bookmarks 書籤 可在關鍵內容處添加標籤,便捷跳轉
Markdown All in One MD 工具箱 快捷操作、表格、預覽等各項功能

實際使用

首先在菜單 → 文件 → 自動保存打鉤,不用擔心沒有保存這回事了,只要一直寫寫就 OK。

不過為了自動格式換行插件正常工作,我還是習慣寫一行按一下 Ctrl+S 來手動保存。就算沒自動保存突然關閉軟件也不會丟失內容,但是最好不要太過依賴這種方式。

在編輯 .md 文件的時候,右上角有個按鈕叫打開側邊欄預覽(見下圖),可以同步查看排版後的效果,如上圖1

像寫代碼一樣寫作 6

Git

Git 是程序員們最愛的版本控制軟件沒有之一。只要你使用方法得當,這個東西可以把幾乎你對文字(代碼)的每一次修改變動都記錄下來,隨時都可能看到每次修改了什麼內容,以及可以回退到任何時間的版本。

而且可以雲端上傳下載,比對不同版本的差異,進行自動或者手動合併。在編程中每一個字母和符號都是受控的,所以盡請放心絕對可以處理好你的文字。

下載安裝

Git 官網可以下載到各種系統的版本。安裝好後,重啟 VS Code,在版本(源代碼管理)裡面就可以看到相應的菜單了。

基本使用

初始化存儲庫

像寫代碼一樣寫作 7

初始化存儲庫意味著將這個目錄加到 Git 的管轄範圍。會在目錄下新建 .git 隱藏目錄,不要去刪除或手動編輯改目錄中的內容。

檢測更改

在本目錄下創建和修改文本文件,編輯一些文字保存,在更改區裡會自動檢測到列出來,並高亮提示。點擊這個文件,會展出他和之前版本的差異。

像寫代碼一樣寫作 8

可以看到左側舊版有一行行首標記了一個 - 符號,右邊新版幾行行首都顯示了一個 + 符號,表明為新增行。其中 119 行為部分文字修改,已經追踪到具體哪幾個字變了並高亮顯示。

當然文字級的跟踪僅限於文本文件,也就是你可以用記事本查看和編輯的。對於圖片、音視頻、Word 和 Excel 等文件,如果修改變動了只能記錄整體文件的變化,也就和你手動複製備份了一個副本是一樣。所以對於這類文件,如果還在不斷的修改變化,不推薦使用 Git 管理。

本地提交

更改的文件本應手動放入暫存區,然後從暫存區提交到本地庫。

我們這裡簡化一點,直接在輸入框中輸入本次提交的備註,然後 Ctrl+Enter 提交到本地庫。

像寫代碼一樣寫作 9

這樣的提交就相當於一次歸檔的版本記錄。點擊上方 Git:view History 按鈕(插件功能),可以查看到各次提交的記錄和時間、人員,每次記錄都可以查看詳情、變化,並與其他版本進行對比。

像寫代碼一樣寫作 10

雲端同步

雲端同步就要找個網站來註冊一下了。全球通用的 Github 在國內的訪問速度不穩定,好在我們有國內的替代(山寨)版本,還有個犀利的名字碼雲 Gitee。最簡要的介紹下怎麼用。

註冊登錄驗證之後,點擊右上角+號,新建倉庫。

像寫代碼一樣寫作 11

然後輸入倉庫名稱,會自動生成英文或者拼音的項目路徑。

選擇項目為公開還是私有。注意公開倉庫則其他人可以查看項目中文章的所有編輯和刪改記錄。所以不打算公開的可以選擇私有。其他默認不勾選。點擊創建。

像寫代碼一樣寫作 12

會出現下面的提示,有一些教你如何連接遠程的命令。

像寫代碼一樣寫作 13

這裡要用到一點命令。命令在哪輸入呢?按查看 → 終端或者快捷鍵 Ctrl + ` 開啟下方的終端命令行,複製或輸入命令即可:

像寫代碼一樣寫作 14

首先進行全局的用戶設置,推薦設成和 gitee 註冊的用戶名和郵箱:

git config --global user.name "myName"

git config --global user.email "[email protected]"

然後因為我們前面已經初始化過存儲庫了,所以按照已有仓库部分的命令操作就行。也就是下面兩行:

git remote add origin https://gitee.com/rackar/my_story.git

git push -u origin master

第一行是添加遠程庫鏈接,只需執行一次。第二行是推送本地庫到遠程並設為默認,俗稱上傳。首次推送時會彈出用戶密碼框,輸入剛才註冊時的用戶密碼。

遠程庫地址 URL 記得換成自己的。

推送成功會如下提示:

像寫代碼一樣寫作 15

後續編輯又提交了本地庫之後,可以使用命令 git push 直接推送。也可以點擊源碼管理器右上角的三個點按鈕 ... ,選擇推送。

像寫代碼一樣寫作 16

多設備同步

想在另一台設備上同步寫作的話,也按照上面的方法安裝好 VS Code 和 Git。然後用命令行終端運行命令:

git clone https://gitee.com/rackar/my_story

會將整個項目下載到運行目錄下。

然後每次開機寫作前,點擊拉取從雲端拉取最新版到本地。關機前使用推送將修改後的版本推送到雲端。

多人同步

這個操作就要更複雜一些,簡要介紹下就不展開了。

主要有兩種方式,第一種類似多設備同步,但是有時會有同一版本被同時編輯一處的情況,Git 會自動提示衝突在第幾行,需要手動選取保留哪一個版本。

第二種叫 Pull Requests。編輯的人需要 fork(類似拷貝)一份項目,然後修改完 PR 回主項目。主項目管理人需要審閱更改,同意合併才能更新進來。

結束語

VS Code 還有各種各樣的神器插件來提供人性化的操作。

寫作文本時就發現文章添加圖片的操作有些繁瑣。所以修改發布了一個開源插件。插件中搜索 markdown-image 就可以找到和安裝。可以一鍵自動上傳截圖或者本地圖片到七牛雲圖床,並將外鏈加入文章內,方便分享。

像寫代碼一樣寫作 17

所以近期還會寫一篇介紹申請七牛雲免費空間和應用本插件的文章。可以關注公眾號 Rackar 來獲取更新消息。

本文的主要內容就寫到這了。有問題建議歡迎留言。希望能對大家有所幫助。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *