【问题标题】:Difference between hard wrap and soft wrap?硬包装和软包装的区别?
【发布时间】:2010-09-24 02:40:25
【问题描述】:

我正在编写一个文本编辑器。在查看了其他文本编辑器后,我注意到其中一些是指“软”与“硬”换行。有什么区别?我似乎无法通过搜索找到答案。

【问题讨论】:

    标签: word-wrap


    【解决方案1】:

    硬换行在文本中的换行点处插入实际换行符,而软换行实际文本仍在同一行上,但看起来像是分成几行。

    【讨论】:

      【解决方案2】:

      文本编辑器通常将文本自动换行成带有硬换行符的段落,但如果您稍后返回并编辑/添加/删除单词,文本重新排列成一个不错的段落的情况就不太常见了。 (您可以使用 M-q 在 emacs 中手动执行此操作。)

      这很烦人,因为像我这样的强迫症患者然后回去必须在适当的点手动重新插入硬中断。

      另一方面,软包装很烦人,因为大多数命令行工具都使用基于行的差异(版本控制是我最注意到的地方)。如果您有一个 1/3 页的软包装段落并修复了错字,则基本上不可能在常规 diff 输出或类似输出中看到更改的位置。

      【讨论】:

      • 我知道你说的是“常规”差异,但我想指出,突出显示是天赐之物。
      • @Will,那么像你这样的 ocd 人推荐什么样的解决方案?
      • 如果你使用 Vim,打开行号 (:set nu) 然后你会发现它软换行,但保持它们分开,所以如果单个行比屏幕宽,你会仍然能够阅读所有文本,但不会影响您按行号搜索的能力。 (可见线与实际线不同)。您也可以通过键入:10 或 :30 等直接跳到一行。
      • 如果你使用 Git,很容易看到软包装的变化。使用git diff --word-diff
      【解决方案3】:

      soft : textarea 中的文本在表单中提交时不换行。这是默认的

      hard :文本区域中的文本在表单中提交时被换行(包含换行符)。使用“hard”时,必须指定cols属性

      Reference: W3Schools

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-12-21
        • 1970-01-01
        • 2021-07-19
        • 2018-09-28
        • 2011-10-16
        • 1970-01-01
        相关资源
        最近更新 更多