Forwarded from volond
/**
* Первая буква в столбце В верхний регистр
* @param {SpreadsheetApp.Range} range
* @customfunction
*/
var mapToUpperCase=(range)=>{
range=Array.isArray(range)?range:[range]
return range.map(el=>{
var str=el[0]
var [a,...rest]=[...str]
return [[a.toUpperCase(),rest.join("")].join("")]
})
}Взаимодействие между web-приложениями через Web Intents
Источник:
В Android OS эта проблема решается при помощи Intents[1] — архитектуры, позволяющей взаимодействовать компонентам одного или нескольких различных приложений. По этой схеме, клиенсткое приложение создает запрос (к примеру, разослать что-нибудь) и задает параметры, которые будут переданы другому приложению-сервису. После этого пользователю предоставляется список приложений, которые регистрировали свою возможность обрабатывать данный тип intent-запроса. Затем выбранное пользователем приложение запускается в новом контексте, и ему передаются параметры, переданные клиентом в некоем, заранее определенном для конкретного типа intent, формате.
Мы считаем своей основной и важнейшей задачей разработку простого и удобного в использовании API. При помощи Web Intents, вы можете подключить web-приложение к необходимому сервису используя всего лишь две строки кода! Chome сделает все остальное за вас.
••••••••••
Обсудить:
Источник:
В Android OS эта проблема решается при помощи Intents[1] — архитектуры, позволяющей взаимодействовать компонентам одного или нескольких различных приложений. По этой схеме, клиенсткое приложение создает запрос (к примеру, разослать что-нибудь) и задает параметры, которые будут переданы другому приложению-сервису. После этого пользователю предоставляется список приложений, которые регистрировали свою возможность обрабатывать данный тип intent-запроса. Затем выбранное пользователем приложение запускается в новом контексте, и ему передаются параметры, переданные клиентом в некоем, заранее определенном для конкретного типа intent, формате.
Мы считаем своей основной и важнейшей задачей разработку простого и удобного в использовании API. При помощи Web Intents, вы можете подключить web-приложение к необходимому сервису используя всего лишь две строки кода! Chome сделает все остальное за вас.
••••••••••
Обсудить:
Хабр
Взаимодействие между web-приложениями через Web Intents
Прим.: Обычно не занимаюсь переводами, но новость проскочила интересная. В сегодняшней браузерной экосистеме веб-приложения полностью изолированы друг от друга,...
Forwarded from volond
var blankArr=(arr)=>arr.filter((row)=>row.filter((cell)=>!!cell.toString()).length)
var values=(sh)=>{
let name=sh.getName()
let dataRange=sh.getDataRange()
let values=sh.getDataRange().getValues()
let count =blankArr(values).length
let a1Not=dataRange.getA1Notation()
return [name,count,a1Not]
}
/**
* Информация о количестве непустых строк
* в листах активной книги
* @customfunction
*/
function rowsCountNoBlank(){
return SpreadsheetApp
.getActiveSpreadsheet()
.getSheets()
.map(values)
}
function test(){
console.log(rowsCountNoBlank())
}
var values=(sh)=>{
let name=sh.getName()
let dataRange=sh.getDataRange()
let values=sh.getDataRange().getValues()
let count =blankArr(values).length
let a1Not=dataRange.getA1Notation()
return [name,count,a1Not]
}
/**
* Информация о количестве непустых строк
* в листах активной книги
* @customfunction
*/
function rowsCountNoBlank(){
return SpreadsheetApp
.getActiveSpreadsheet()
.getSheets()
.map(values)
}
function test(){
console.log(rowsCountNoBlank())
}
Forwarded from GAS Library: EventEmitter (Максим Стоянов)
Библиотека для Google Apps Script.
EventEmitter - представляет собой объект реализующий работу с событиями.
URL файла-проекта:
https://script.google.com/home/projects/1YN3YNaA5JaiY7d_0R4Afxg1YwrU2EVi4y86QuqvkWs0o78eKvMWHL7FI/edit
ID библиотеки:
EventEmitter - представляет собой объект реализующий работу с событиями.
URL файла-проекта:
https://script.google.com/home/projects/1YN3YNaA5JaiY7d_0R4Afxg1YwrU2EVi4y86QuqvkWs0o78eKvMWHL7FI/edit
ID библиотеки:
1YN3YNaA5JaiY7d_0R4Afxg1YwrU2EVi4y86QuqvkWs0o78eKvMWHL7FIVolond Apps pinned «Библиотека для Google Apps Script. EventEmitter - представляет собой объект реализующий работу с событиями. URL файла-проекта: https://script.google.com/home/projects/1YN3YNaA5JaiY7d_0R4Afxg1YwrU2EVi4y86QuqvkWs0o78eKvMWHL7FI/edit ID библиотеки: 1YN3YNa…»
Шпаргалка по регулярным выражениям. В примерах
Источник:
Регулярные выражения (regex или regexp) очень эффективны для извлечения информации из текста. Для этого нужно произвести поиск одного или нескольких совпадений по определённому шаблону (т. е. определённой последовательности символов ASCII или unicode).
#regex #regexp
••••••••••
Обсудить:
Источник:
Регулярные выражения (regex или regexp) очень эффективны для извлечения информации из текста. Для этого нужно произвести поиск одного или нескольких совпадений по определённому шаблону (т. е. определённой последовательности символов ASCII или unicode).
#regex #regexp
••••••••••
Обсудить:
Medium
Шпаргалка по регулярным выражениям. В примерах
Эта шпаргалка по основным шаблонам регулярных выражений, которые помогут вам для решения повседневных задач.
Forwarded from DidacticСardsBot
Google анонсировала новый язык программирования
Источник:
На сайте поискового гиганта появился свежий пост, в котором компания рассказала о своём новом проекте. Он представляет из себя новый декларативный язык логического программирования, названный Logica.
Представители компании заявили, что в основном новинка предназначена для «манипулирования данными и транслирования программ в язык SQL».
Logica будет полезна разработчикам, которые хотят использовать логическое программирование для написания запросов к базе данных. Уже сейчас новый язык Google имеет поддержку Google BigQuery, PostgreSQL и SQLite.
••••••••••
Обсудить:
Источник:
На сайте поискового гиганта появился свежий пост, в котором компания рассказала о своём новом проекте. Он представляет из себя новый декларативный язык логического программирования, названный Logica.
Представители компании заявили, что в основном новинка предназначена для «манипулирования данными и транслирования программ в язык SQL».
Logica будет полезна разработчикам, которые хотят использовать логическое программирование для написания запросов к базе данных. Уже сейчас новый язык Google имеет поддержку Google BigQuery, PostgreSQL и SQLite.
••••••••••
Обсудить:
Tproger
Google анонсировала новый язык программирования
С его помощью компания хочет облегчить работу с базами данных. Уже сейчас новинки поддерживает Google BigQuery, PostgreSQL и SQLite.
Volond Apps pinned «Create webhooks from Google sheets Webhooks мы уже получали (Телеграм бот Да⁉️), а как насчет что бы отправлять например при изменении в определенной строке Причем мы не будем использовать триггеры ...😃 🛠 Пользовательские функции запускаются всякий раз…»
Сlipboard button in Sidebar using Google's `Apps Script`
Источник:
Adding copy to clipboard button to every google code prettify pre blocks in blogger
Источник:
••••••••••
https://docs.google.com/spreadsheets/d/1lSIGnmaqCOR-UfN7tZuHzdc5UEXRZVgst5XKRrsDx24/edit?usp=sharing
Обсудить:
#GAS #clipboard
Источник:
Adding copy to clipboard button to every google code prettify pre blocks in blogger
Источник:
••••••••••
https://docs.google.com/spreadsheets/d/1lSIGnmaqCOR-UfN7tZuHzdc5UEXRZVgst5XKRrsDx24/edit?usp=sharing
Обсудить:
#GAS #clipboard
Stack Overflow
Create a copy to clipboard button in Sidebar using Google's `Apps Script`
Is there a way to create a copy to clipboard button in Sidebar using Google's Apps Script?
My current code is the following, but the copy button is not working:
function createCalendarEvent() {
...
My current code is the following, but the copy button is not working:
function createCalendarEvent() {
...