我正在寻找一个终端(控制台)客户端/服务器,它真正致力于协作 TeX 编辑。它应该是实时的,例如 Gobby。您可以通过网络(内部网)看到同事输入的内容。一台服务器和几个客户端用于协同工作。
控制台或终端意味着它必须在经典的 unix 终端(Linux 或 NetBSD 或 FreeBSD)下工作。
有 vim 或 emacs,但它们的目标范围很广,但并非直接专用于 TeX。有很多关于图形应用程序(如 gobby)甚至 Web 服务器平台(如 sharedlatex)的帖子……
我真的找不到可以单独执行此操作的终端客户端。如今不存在单独的应用程序。这很可悲,因为 TeX 对于出版来说很酷而且很重要。
一种用于协作编辑的 nano 将是完美的。它应该有一个键绑定(例如 F5)来使用 pdflatex 和 bibtex 编译 pdf...然后,网络上的每个人都可以按照自己想要的方式打开创建的 pdf。完全自由,没有缓慢、臃肿、高价的 Web Share TeX 网站 ;) 解决方案应该是免费的、开源的,并且适用于所有人。
如果将来有一天会出现一个专门用于终端协作编辑 TeX 的服务器/客户端,请随意发表你的想法?谁知道呢。
答案1
除了@Marijn 已经提到的之外,我想提出另一种可能性。
我认为最好坚持使用以下工具vim
或 这样的工具emacs
,因为它们本身就存在于终端上。我已经为远程配对编程会话做了(我知道,这与坐在一起的概念背道而驰,但有时这是不可能的,一个人必须远程工作),一个人vim
在一个tmux
会话中打开,另一个人通过登录到第一个人的机器上ssh
并连接到同一个tmux
会话。使用这种设置,两个人都可以同时看到代码。
对于协作文档编辑,我另外建议将生成的 PDF 放在共享文件系统上,例如 NFS 或 SSHFS。这样你们双方都可以共享结果。
尽管如此,如果您不必采用这种结对编程的方案,我会坚持将文档的文件保存在某种版本控制中,例如,git
这样您就可以在同一文档上工作。此外,你们每个人都可以拥有自己的工具链,因此没有人需要学习,例如,emacs
如果她是vim
用户。
答案2
如果您想与多人同时处理一个文件(即两个人同时打开、编辑、保存和/或编译该文件),那么建议使用版本控制系统,例如 git 或 svn。
如果你只想远程编辑 LaTeX 文件,那么可以使用带有 vim-latex 等扩展名的 Vim(http://vim-latex.sourceforge.net/)或带有 AUCTeX 的 emacs(https://www.gnu.org/software/auctex/) 是合适的。扩展包含许多特定于 LaTeX 的 (oe,专用) 工具和命令,包括从编辑器内部进行编译。
使用 nano 时,您无法直接从编辑器进行编译。但是,在 Linux 中,您可以使用第二个进程监视文件,并在文件更改时执行命令(例如 LaTeX 编译器)(例如,https://superuser.com/questions/181517/how-to-execute-a-command-whenever-a-file-changes)。
答案3
您可以使用Atom
全新teletype
软件包https://teletype.atom.io/
由于Atom
其高度可定制,您可以对其进行调整,使其仅用于 tex 编辑(为此目的存在多个软件包),并teletype
允许贡献者之间实时共享文档。
它不是一个控制台软件,所以这是一个很大的缺点,但也许你可以看看它,以防万一,因为这个解决方案似乎涵盖了你需求的所有其他点。
答案4
我使用 emacs 及其 latex 模式和纯文本控制台中的语法着色撰写了数十到数百页的文章。
对于协作工作,我使用版本控制(例如 subversion),将文档存储在服务器存储库中,例如通过 svn+ssh。
Emacs 已将 shell 工具、构建/编译工具、版本控制工具以及许多其他工具包含在系统中。您可以在控制台中在 emacs 中玩游戏。
我不确定你为什么说 emacs 不是 tex 的好选择,除非你想在文本中显示图形。我从来没有遇到过理解我在 emacs 中编写的 tex 语法的困难,而且我所写的内容正是将要处理和呈现的内容,所以我从来不用担心格式,只需担心内容。