我正在尝试通过在保存(:w
)文件时记录时间戳来量化我的vim操作。
是否可以知道自上次保存以来文件是否真的被编辑过?
例如,我按:w
保存了文件,然后什么都没做,只需输入:w
再次保存,是否可以判断文件是否实际没有被修改?
答案 0 :(得分:3)
您可以检查 private String post(String url) throws JSONException {
JSONObject json = new JSONObject();
try {
String query = "";
String EQ = ":";
String AMP = "&";
for (NameValuePair param : parameters) {
query = json.put(param.getName(), param.getValue()) + ",";
}
// url+= "?" + query;
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost(url);
if (parameters != null) {
StringEntity se = new StringEntity(query.toString());
se.setContentType(new BasicHeader(HTTP.CONTENT_TYPE,
"application/json"));
post.setEntity(se);
Log.d("POSTQuery", url + parameters);
}
HttpResponse response = client.execute(post);
StatusLine statusLine = response.getStatusLine();
Log.d("Status Code", "" + statusLine.getStatusCode());
if (statusLine.getStatusCode() == 200) {
return StringifyResponse(response);
}
Log.d("POSTQuery", url);
// Log.d("response", response.toString());
return StringifyResponse(response);
} catch (ClientProtocolException e) {
} catch (IOException e) {
Log.d("response", e.toString());
return "IOException";
}
return null;
}
选项的值:
'modified'
答案 1 :(得分:2)
Vim显示' [+]'文件被修改后的文件名旁边。但是,即使磁盘上的文件和缓冲区之间没有差异,它也会显示它(例如,如果您添加字母' a然后删除它,则会认为该文件已被编辑)。
答案 2 :(得分:1)
如果你在Vim中将laststatus
设置为2,它会在窗口底部显示一个状态行,当文件被修改后,文件名旁边有一个[+]
指示符最后写的。
相关帮助页面:laststatus,statusline
答案 3 :(得分:0)
在阅读你的答案之前,我认为这是关于在保存文件之前知道文件是否已经从另一个vim实例/编辑器更新过来了!
如果是这样,vim通常告诉我什么时候要保存它:
警告:自vim读取文件后文件已更新!
你还想写它(是/否)?
如果只是因为知道自上次以来你是否有任何改变,如前所述,Vim会在你的文件名后显示 [+] 。
答案 4 :(得分:0)
按somefile.txt
,如果已进行更改,[修改]将显示在您的文件名之后。