Last active
October 16, 2017 11:48
-
-
Save psycalc/bec1c61a58f14fa85ddd21a9145c7b06 to your computer and use it in GitHub Desktop.
Google app script to convert selection to table
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//just add convenient menu to G suit | |
function onOpen() { | |
var ui=DocumentApp.getUi(); | |
ui.createMenu('Макросы') | |
.addItem('SelectionToTable', 'myFunction') | |
.addItem('ImageFiller','imageFiller') | |
.addToUi(); | |
//здесь можно дополнить менюшку | |
}; | |
//main function | |
//todo dectet delimeter (exp. newline, comma, space and so on) | |
function myFunction() { | |
//get instance | |
var doc = DocumentApp.getActiveDocument(); | |
//get body | |
var docbody = doc.getBody(); | |
//get selection todo: SELECTSOMETHIN!!!! | |
var selection = doc.getSelection(); | |
//if (Object.getOwnPropertyNames(selection).length === 0) { | |
//DocumentApp.getUi().showModalDialog(userInterface, "А выбор мне запили"); | |
//} | |
//else { | |
//it's not empty | |
//get array of lines | |
var elements = selection.getRangeElements(); | |
//подготовим ячейки для запихивания push | |
var cells = []; //первые скобки это начало таблицы | |
//циклимся по элементам выбора | |
for(var k in elements) { | |
//такой хитрожопый способ получить текст, просты пути мы не ищем зачем? | |
var text =elements[k].getElement().editAsText() | |
// вторые по вложености квадратные скобки это строки, а содержание строк можно в одинарных кавычках писать | |
// шаблон для таблицы это - [ 'первая ячейка', 'вторая ячейка' ] квадратные скопки в свою очередь начало и конец строки в таблице | |
cells.push(['',text.getText()]); | |
} | |
docbody.appendTable(cells); | |
//} | |
} | |
function imageFiller() { | |
var doc = DocumentApp.getActiveDocument(); | |
var docBody = doc.getBody(); | |
var w,h; | |
var ui=DocumentApp.getUi(); | |
h=ui.prompt( | |
'Width!', | |
'h:', | |
ui.ButtonSet.OK_CANCEL).getResponseText(); | |
w=ui.prompt( | |
'Height!', | |
'w:', | |
ui.ButtonSet.OK_CANCEL).getResponseText(); | |
ui.alert("http://placehold.it/"+h+"x"+w); | |
docBody.appendImage(UrlFetchApp.fetch("http://placehold.it/"+h+"x"+w)); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment