您如何以某种方式增加或减少 vim 缓冲区的高度或宽度,以便当您按住组合键时,缓冲区大小会不断变化?
我知道CTRL W <有效,但它一次移动一个单位。我正在寻找一种方法,当您CTRL W <按住<VIM时,它会流畅地(不断地)更改缓冲区的宽度,直到您松开<.
我有一个由另一个进程启动的进程,所以我看不到启动进程的命令行输出,我该如何检查控制台输出?我可以将命令行“附加”到进程吗?如果是,如何?
编辑:我的意思是:

如何将 Windows 10 命令行窗口设置为默认无限滚动,就像在 Ubuntu 中一样?
我已将属性对话框中可能与缓冲区相关的唯一两个可能的选项设置为 999,但仍然会溢出。
据我了解,比特率下的两个数字是每个流的平均比特率和当前比特率。
但是缓冲区下的两个数字是多少?我想第二个是内存中加载的数据量,但第一个数字是多少?解码的数据量?
另外,为什么会有抖动和同步偏移?
(供您参考,此处流 0-6 是视频轨道 1、音频轨道 1-2 和字幕轨道 1-4。)

有没有办法在 Vim 中恢复未列出的缓冲区并将其发送回缓冲区列表?
例如:
:ls! 1#“一个.txt” 2% “两个.txt” 3u "三.txt"
我可以将第三个缓冲区发送回列表吗?
:ls 1#“一个.txt” 2% “两个.txt” 3 《三.txt》
我对是什么导致我的网络变慢感到有些困惑,我希望在这里而不是在“webapps.sx.com”上提问是正确的,因为我的问题不仅与 YouTube 相关,而且基本上与许多视频网站有关。
我无法理解我住在首尔(韩国),使用100 Mbit 局域网连接,在内容缓冲和流媒体方面有问题吗?我注意到的是,当我使用像 jDownloader 或 DownThemAll 这样的高级下载管理器,甚至是标准的下载管理器时,例如 YouTube 视频的下载速度非常快 - 我总是以 720p 下载它们。
但是,当我尝试流式传输相同的视频时 - 嵌入在网站上或直接在 YT 上 - 当我从“小预览”转到全屏模式时,它会永远缓冲并丢失所有进度(wtf??)!而所有这些都是通常在360或480P,720P不!(我从不以 720p 观看,因为这绝对不可能。)Vimeo 好一点,我注意到唯一一个表现更好的视频网站。我在德国使用 30-33 Mbit LAN 连接时已经遇到了同样的问题。这尤其令人困惑,因为 YT 视频的下载速度通常在“jDownloader”中达到 2-2.5 MB/秒(否则我没有测量),所以当它以相同的速度缓冲时应该足够了。为什么不是这样,是否有技术原因?
为什么甚至 Google / YouTube 似乎都不能提供足够快的缓冲 / 流媒体体验,这是什么问题?是我的电脑/硬件吗?我的笔记本电脑配备 6 GB RAM 的 Intel DualCore i7(2010 代),并始终使用最新的 Google Chrome 浏览器和 Adobe Flash 更新。
随附您找到最新的 speedtest.net 结果:
.
那里发生了什么?
上周,在对主题进行了更多研究之后,我一直在想,这些年来我一直忽略了什么来理解写缓存策略,总是将其保留为默认设置。写缓存策略提高了写性能,包括写回缓存和写缓存缓冲区刷新。
这就是我对上述所有内容的理解,但如果我在某处出错,请纠正我:
直写缓存/直写缓存本身不是写缓存策略的一部分,而是将数据写入缓存和存储设备时,因此如果 Windows 稍后再次需要该数据,则从缓存中检索它而不是从存储设备,这意味着只提高读取性能,因为无需等待存储设备再次读取所需的数据。由于数据仍然写入存储设备,写入性能没有提高,并且在断电或系统崩溃的情况下没有数据丢失或损坏的风险,而只有缓存中的数据丢失。此选项似乎默认启用,建议用于不需要用户使用“安全删除硬件”功能的可移动设备。
回写缓存与上面类似,但不向存储设备写入数据,定期从缓存中释放数据并在空闲时写入存储设备。在我看来,此选项可提高读取和写入性能,但如果发生电源故障或系统崩溃,不仅会丢失最终要写入存储设备的数据,还会导致文件不一致或文件系统损坏,这会带来风险。回写缓存不能与直写缓存一起启用,如果没有备用电源,不建议启用。
我认为写缓存缓冲区刷新类似于回写缓存,但可以在断电之前立即将数据从缓存释放和写入存储设备,但我不知道它是否也适用于偶尔的系统崩溃。此选项似乎是对回写缓存的补充,可减少或可能消除数据丢失或文件系统损坏的风险。
我对最后 2 个选项与当今现代 SSD 的相关性有疑问,以便获得最佳性能并减少 SSD 的磨损:
我知道传统硬盘驱动器带有板载缓存(我想知道这是什么类型的缓存),但是 SSD 也带有缓存吗?假设他们这样做了,这个缓存是否比他们的 NAND 闪存和系统 RAM 快,值得冒险通过启用回写缓存来利用它?我在某处读到通常存储设备的缓存比 RAM 快,但我想确定一下。此外,我读到应该启用写缓存,因为稍后要写入 NAND 闪存的当前数据会在缓存中保留一段时间,并且如果数据在最终写入之前被大量修改,则保留这些数据及其定期发布可减少其写入 SSD 的时间,从而减少其磨损。
现在关于写缓存缓冲区刷新,我听说 SSD 控制器本身非常快,不需要启用此选项,因为它们管理刷新。然而,再一次,我不知道 SSD 是否有自己的板载缓存,以及它是否比它们的 NAND 闪存和系统 RAM 快,因为如果是,保持启用此选项是有意义的。
最近我发布了关于我的 Intel 330 SSD 120GB 问题的问题,这是进行更深入研究的主要原因,怀疑写入缓存策略是 SSD 冻结问题的罪魁祸首,假设释放的数据是导致冻结的原因。目前我启用了写缓存并禁用了写缓存缓冲区刷新,因为我相信 SSD 控制器对写缓存刷新和 Windows 写缓存缓冲区刷新的管理相互冲突:

由于我想通过小步骤进行故障排除以最终确定问题的根源,因此我决定从写缓存策略开始,然后转向驱动程序,稍后切换到 AHCI,最后通过注册表修改禁用 DIPM(设备启动的电源管理)感谢@TomWijsman
我需要bash在 Cygwin 环境中对某些命令的速度进行基准测试,并确保我正在运行的测试不会命中 Windows 缓冲区或缓存。尽管我是在bash环境中进行基准测试,但我怀疑所有缓存都是由 Windows 本身完成的,而不是 Cygwin。
在基于Unix 的系统上,您可以执行以下操作来清除所有缓存和缓冲区:
echo 3 > /proc/sys/vm/drop_caches
Run Code Online (Sandbox Code Playgroud)
这个命令在 Windows 上的等价物是什么?
如果不从源代码进行编辑和重新编译ffmpeg,如何隐藏开始编码时打印的许多行中的一些,而不隐藏编码时每秒更新一次的进度条?
进度条:
\nframe=14759 fps=3226 \xe2\x80\xa6 bitrate=8509.2kbits/s speed= 108x
典型命令:
\nffmpeg -hide_banner in.mov out.mp4
典型噪音:十几行或更多行,例如
\n Duration: 00:59:19.45, start: 0.257200, bitrate: 9623 kb/s\n Stream #0:0[0x1bf]: Data: dvd_nav_packet\n Stream #0:1[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, smpte170m, bottom first), 720x480 [SAR 8:9 DAR 4:3], 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc\n Stream #0:2[0xa0]: Audio: pcm_dvd, 48000 Hz, stereo, s16, 1536 kb/s\nStream mapping:\n Stream #0:1 -> #0:0 (copy)\n Stream #0:2 -> #0:1 (pcm_dvd (native) …Run Code Online (Sandbox Code Playgroud) 我使用的各种插件将它们自己的结果加载到 quickfix 窗口中的缓冲区中。例如,ack.vim 在那里加载它的搜索结果。
当缓冲区加载到 quickfix 窗口时,我想关闭拼写检查和 80 列行指示器等各种功能。
如何检测缓冲区已加载到 quickfix 窗口中?
更新
到目前为止,我有这个,它关闭了 quickfix 窗口的 80 列标记。
au BufReadPost quickfix setlocal colorcolumn=0