거기에 숭고한 텍스트가 편집하고 저장할 때 파일의 주석 블록에서 날짜를 자동으로 업데이트하는 방법이 있습니까?자동 업데이트 날짜를 저장하여 숭고한가?
같은 :
/**
* @author yada yada
* @date 2015-01-08
*/
에 :
확인/**
* @author yada yada
* @date 2015-01-19
*/
거기에 숭고한 텍스트가 편집하고 저장할 때 파일의 주석 블록에서 날짜를 자동으로 업데이트하는 방법이 있습니까?자동 업데이트 날짜를 저장하여 숭고한가?
같은 :
/**
* @author yada yada
* @date 2015-01-08
*/
에 :
확인/**
* @author yada yada
* @date 2015-01-19
*/
이 그것을 얻었다. 는
환경의 혼합> 키 Bindings- 사용자의
[
{"keys": ["ctrl+s"], "command": "date_and_save" }
]
add_date.py
'''
Autodate header
@date <>
'''
from datetime import datetime
import sublime, sublime_plugin
class AddDateCommand(sublime_plugin.TextCommand):
def run(self, args):
content = self.view.substr(sublime.Region(0, self.view.size()))
begin = content.find('@date <',0,100)
if begin == -1:
return
end = content.find("\n", begin)
target_region = sublime.Region(begin, end)
self.view.sel().clear()
self.view.sel().add(target_region)
self.view.run_command(
"insert_snippet",
{ "contents": "@date <%s>" % datetime.now().strftime("%Y-%m-%d %H:%M:%S") })
class DateAndSaveCommand(sublime_plugin.WindowCommand):
def run(self):
self.window.run_command("add_date")
self.window.run_command("save")
\ o/
굉장한 것들! 위의 솔루션 작은 추가 :이 줄이 끝날 때까지 모든 것을 제거하기 때문에이 라인은, 좀 더 역동적 인 것
대신
end = begin + 19
.
end = content.find("\n", begin)
예를 들어, 줄 길이가 다를 수있는 곳에서 버전을 올리는 데 도움이됩니다.
이것은 직접 질문에 대답하지 않기 때문에 주석으로 더 좋을 것입니다. – mjk
동의합니다 - 저는 그 일을하고 싶었습니다. 그러나 새로운 사용자가되어서 나에게 코멘트하지 않았습니다 : (미안 해요. – MischaKolbe
당신은 ctrl + s 키 바인딩을 사용하고 있습니다.이 경우 파일은 저장되지 않습니다. – Sinac
'date' 발생을 N 개의 첫 번째 문자의 범위로 대체하는 것을 제한하면보다 안전합니다. 당신은 아마'date'의 다른 발생이 코드에서 대체되기를 원하지 않을 것입니다. 더 나은 방법은 스캔 할 선의 양을 나타내는 것입니다. 파일의 수정 시간을 원할 수도 있습니다. C의 열쇠 바인딩이 잘 작동합니다. – Flint