2012-11-27 5 views
24

मैं Google दस्तावेज़ों में एक टाइमस्टैम्प (दिनांक और/या समय) डालना चाहता हूं। समर्थन प्रलेखन() कहता है कि एक कीबोर्ड शॉर्टकट होना चाहिए, लेकिन यह मेरे पर्यावरण (Win7 + IE9) में काम नहीं करता है।Google दस्तावेज़ में दिनांक समय डालें

क्या कोई मुझे यह प्राप्त करने के लिए Google Apps स्क्रिप्ट प्रदान कर सकता है?

+0

Apps स्क्रिप्ट Google दस्तावेज़ के लिए शॉर्टकट या मेनू नहीं जोड़ सकते। इसकी क्या ज़रूरत है? मेरा मतलब है, इसका पूरा उपयोग। क्या आप बड़े पैमाने पर दस्तावेजों के समूह में टाइमस्टैम्प जोड़ रहे हैं? या और क्या? –

+0

आप दस्तावेज़ों के लिए अपना लिंक खो रहे हैं। आप http://support.google.com/drive/bin/answer.py?hl=hi&answer=181110 देख सकते हैं, जो शीट्स के लिए है, जब आप डॉक्स सहायता आइटम http: // समर्थन को देखना चाहते हैं .google.com/ड्राइव/बिन/answer.py? hl = en & answer = 179738 और विषय = 1361462 और ctx = विषय, जिसमें कोई शॉर्टकट सूचीबद्ध नहीं है। –

+0

WebApps पर लगभग समान प्रश्न, इस से 2 साल पहले पूछा: http://webapps.stackexchange.com/questions/6440/can-i-print-the-print-date-or-save-date-in-google- दस्तावेज – yurkennis

उत्तर

3

डॉक्स के लिए, शायद आप भाग्य से बाहर हैं, क्योंकि no hotkey for that प्रतीत होता है, और डॉक्स के भीतर से स्क्रिप्टिंग के लिए समर्थन की कमी है (स्प्रेडशीट्स एक अलग कहानी होगी)। चूंकि आप विंडोज़ पर हैं, आप अपने आप को autohotkey का लाभ उठा सकते हैं। This video, जबकि बहुत लंबा रास्ता, वर्तमान तारीख को कहीं भी सम्मिलित करने के लिए वैश्विक हॉटकी कॉम्बो असाइन करना दिखाता है। इसके साथ, आप अपने विंडोज सिस्टम का उपयोग करते समय कहीं भी अपनी तिथि/समय सम्मिलित कर सकते हैं। (आप इस तरह के आईई के रूप में कुछ अनुप्रयोगों में केवल सक्रिय होने के लिए अनुकूलित कर सकते हैं, आप इसके साथ निराला प्राप्त करना चाहते हैं)

+0

बिल्कुल वही जो मैं खोज रहा था, autohotkey जाने का रास्ता है। निसंदेह, यह प्यारी है। टिप्पणी ब्रायन के लिए धन्यवाद! –

-4

इस प्रयास करें:

function insertTimestamp() { 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var cell = ss.getActiveCell(); 

    cell.setValue(new Date()); 
    // sets the cells format to month/day/year. 
    // Remove if you want time inserted as well 
    cell.setNumberFormat("MM/dd/yyyy") 
} 

यह स्प्रेडशीट यकीन नहीं पर काम करता है अगर तुम देख रहे थे अन्य दस्तावेज़ों के लिए।

+1

डॉक्स पर लागू नहीं होता है (जैसा ओपी ने पूछा है), इसलिए डाउनवोट। – yurkennis

-4

आज Google डॉक्स में एक स्प्रेडशीट बनाएं।) आज के रूप में बी 1 में तारीख रखो (समारोह पाठ (बी 1, "dddd, mmmm घ, yyyy") का उपयोग तो निम्न स्क्रिप्ट का उपयोग सी 1 में यह प्रारूप (आप आज स्प्रेडशीट का URL की आवश्यकता होगी

function myFunction() { 
    var doc = DocumentApp.getActiveDocument(); 
    var body1 = doc.getBody(); 
    var style1 = {}; 
    style1[DocumentApp.Attribute.BOLD] = true; 

    var text1 = doc.editAsText(); 
    body1.appendHorizontalRule(); 
    var wb = SpreadsheetApp.openByUrl('spreadsheet url'); 
    var ss = wb.getSheetByName('Today'); 
    var r = ss.getRange('C1'); 
    var date1 = r.getValues(); 
    var par1 =body1.appendParagraph(date1[0]); 
    par1.setAttributes(style1); 
} 
+2

मैं दस्तावेज़ में फ़ंक्शन कहां लागू कर सकता हूं? –

+1

डॉक्स पर लागू नहीं होता है (जैसा ओपी ने पूछा है), इसलिए डाउनवोट। – yurkennis

36

यह अच्छी तरह से काम करता है

गूगल डॉक्स में:। उपकरण -> ओपन स्क्रिप्ट संपादक और इस स्क्रिप्ट

function onOpen() { 
    var ui = DocumentApp.getUi(); 
    // Or FormApp or SpreadsheetApp. 
    ui.createMenu('Custom Menu') 
     .addItem('Insert Date', 'insertDate') 
     .addToUi(); 

} 

function insertDate() { 
    var cursor = DocumentApp.getActiveDocument().getCursor(); 
    if (cursor) { 
     // Attempt to insert text at the cursor position. If insertion returns null, 
     // then the cursor's containing element doesn't allow text insertions. 
     var d = new Date(); 
     var dd = d.getDate(); 
     dd = pad(dd, 2) 
     var mm = d.getMonth() + 1; //Months are zero based 
     mm = pad(mm, 2) 
     var yyyy = d.getFullYear(); 
     var date = dd + "-" + mm + "-" + yyyy; 
     var element = cursor.insertText(date); 
     if (element) { 
     element.setBold(true); 
     } else { 
     DocumentApp.getUi().alert('Cannot insert text at this cursor location.'); 
     } 
    } else { 
     DocumentApp.getUi().alert('Cannot find a cursor in the document.'); 
    } 

} 
function pad (str, max) { 
    str = str.toString(); 
    return str.length < max ? pad("0" + str, max) : str; 
} 

पुनः लोड डॉक्टर बचाने के लिए, अनुमतियां स्वीकार

+0

अच्छा है। धन्यवाद – Marcin

+0

उन लोगों के लिए त्वरित विज्ञापन जो स्प्रेडशीट्स में इसका उपयोग करना चाहते हैं https://gist.github.com/mlatu/11498254 – defhlt

+1

क्या इस कस्टम मेनू के लिए शॉर्टकट बनाने का कोई आसान तरीका है? जवाब के लिए धन्यवाद। –

4

एच ere एक संपादित संस्करण है (पहले से प्रदान किया गया एक है) जो समय सहित एक तिथि टिकट मुद्रित करता है। 02:43:21 ईएसटी 26-03-2014

function onOpen() { 
    var ui = DocumentApp.getUi(); 
    // Or FormApp or SpreadsheetApp. 
    ui.createMenu('Insert Date') 
     .addItem('Insert Date', 'insertDate') 
     .addToUi(); 

} 

function insertTime() { 
    var d = new Date(); 
    var timeStamp = d.getTime(); // Number of ms since Jan 1, 1970 

    // OR: 

    var currentTime = d.toLocaleTimeString(); // "12:35 PM", for instance 
} 

function insertDate() { 
    var cursor = DocumentApp.getActiveDocument().getCursor(); 
    if (cursor) { 
     // Attempt to insert text at the cursor position. If insertion returns null, 
     // then the cursor's containing element doesn't allow text insertions. 
     var d = new Date(); 
     var dd = d.getDate(); 
     dd = pad(dd, 2) 
     var mm = d.getMonth() + 1; //Months are zero based 
     mm = pad(mm, 2) 
     var yyyy = d.getFullYear(); 
     var timeStamp = d.getTime(); // Number of ms since Jan 1, 1970 
     var currentTime = d.toLocaleTimeString(); // "12:35 PM", for instance 
     var date = currentTime + " " + dd + "-" + mm + "-" + yyyy; 
     var element = cursor.insertText(date); 
     if (element) { 
     element.setBold(true); 
     } else { 
     DocumentApp.getUi().alert('Cannot insert text at this cursor location.'); 
     } 
    } else { 
     DocumentApp.getUi().alert('Cannot find a cursor in the document.'); 
    } 

} 
function pad (str, max) { 
    str = str.toString(); 
    return str.length < max ? pad("0" + str, max) : str; 
} 
3

क्योंकि अतिरिक्त कुंजी स्ट्रोक मेनू से तारीख डालने के लिए इस्तेमाल किया जा रहा है, मेरे समाधान है:

यहाँ उत्पादन का एक उदाहरण है एक बैच फ़ाइल, sts.cmd, जो क्लिप-बोर्ड में दिनांक-समय को संग्रहीत करती है, जिसे एक आसान विंडोज + आर, एसटीएस, Ctrl + V प्राप्त करने और पेस्ट करने में सक्षम बनाता है। जिसे आप दस्तावेज़ में दिनांक प्राप्त करने के लिए अतिरिक्त कीस्ट्रोक्स जोड़ रहे हैं वैसे भी आप के साथ-साथ बस में पेस्ट करना चाहें। कोड

@ECHO OFF 
for /f "tokens=1-12 delims=/:. " %%d in ("%time%") do SET MYTIME= %%d:%%e:%%f 
for /f "tokens=1-12 delims=/:. " %%d in ("%date%") do SET MYDATE= %%g-%%e-%%f 
SET MYTS=%MYDATE%%MYTIME% 
ECHO | SET /p dummyname=%MYTS%|clip 

यह मेरे लिए काम करता है जब तक GDocs किसी एम्बेड समारोह है कि अद्यतन करेगा साथ आता है प्रत्येक बार दस्तावेज़ खोले जाने पर वर्तमान तिथि को प्रदर्शित करें।

2

मैकोज़ पर, मैंने ऑटोमेटर का उपयोग किया।

मैंने एक सेवा बनाई जो क्रोम के साथ काम करता है, कोई इनपुट नहीं लेता है, और एक खोल स्क्रिप्ट चलाता है और आउटपुट को क्लिपबोर्ड पर भेजता है। खोल स्क्रिप्ट बहुत ही बुनियादी है:

DateTime=`date "+%Y-%m-%d %H:%M"` 
echo $DateTime 

मैं मध्यवर्ती चर के बिना किया जा सकता था है और सिर्फ तारीख आदेश चला है, लेकिन मैं यह विचार है कि मैं अतिरिक्त संसाधन और स्वरूपण कार्य करना चाहेंगे था।ध्यान दें कि यदि आप दिनांक स्ट्रिंग के स्वरूपण में रिक्त स्थान शामिल करना चाहते हैं, तो स्वरूपण तर्क उद्धरणों में होना चाहिए। स्क्रीन शॉट इसके बजाय एक अंडरबार का उपयोग करता है।

enter image description here स्क्रिप्ट सहेजे गए के साथ, मैं सिस्टम सेटिंग्स> कीबोर्ड> शॉर्टकट्स पर गया, मुझे टेक्स्ट स्क्रिप्ट में मेरी स्क्रिप्ट DateTime2CB.workflow मिली और इसे एक हॉटकी दी। क्या हॉटकी उपयोग में हैं इसका पता लगाने का कोई आसान तरीका नहीं है।

मैं इसे किसी भी ऐप के लिए बना सकता था (और यदि मुझे लगता है कि मैं इसे अन्य ऐप्स का उपयोग करने की कोशिश कर रहा हूं तो भी मैं ऐसा कर सकता हूं), लेकिन अभी यह केवल क्रोम है। मैं शेल स्क्रिप्ट पाइप को क्लिपबोर्ड पर तारीख के आउटपुट, मैक पर पीबीसीपी, उपरोक्त के रूप में ("क्लिप" का उपयोग करके) भी हो सकता था। मैंने दोनों विधियों का परीक्षण किया है और वे काम करते हैं।

मैंने एक ही स्क्रिप्ट को किसी अन्य मैक में जोड़ा और यह जोर देने के लिए स्थापित किया गया कि ऑटोमेटर फ़ाइल (नाम। वर्कफ़्लो) iCloud में सहेजा जा सकता है। उस संदर्भ में, यह कीबोर्ड सेटिंग्स में सूचीबद्ध नहीं था। इसे ठीक करने के लिए, मुझे ओपन> हालिया का उपयोग करके ऑटोमेटर में सहेजी गई आईक्लाउड फ़ाइल को फिर से खोलना पड़ा। यह पूछा गया कि क्या मैं सेवाओं में फाइल स्थापित करना चाहता हूं। उस बिंदु पर एक हां जवाब ने इसे अपने स्थानीय सिस्टम पर सहेजा और मैं सेटिंग> कीबोर्ड> शॉर्टकट> सेवाओं के तहत इसे ढूंढ सकता था।

मुझे आशा है कि यह अन्य मैक उपयोगकर्ताओं की सहायता करेगा।

अगस्त

7

मुझे यकीन है कि अगर श्रेणी Google Apps स्क्रिप्ट आप के लिए पूछ रहे थे के तहत एक ऐड-ऑन जाता है, बग Text Factory समय-स्टाम्प सम्मिलित करने के लिए सुविधा प्रदान करता है नहीं कर रहा हूँ।

Screenshot

संबंधित मुद्दे