К сожалению, я не могу комментировать из-за отсутствия репутации, но вот мои мысли:
Я полагаю, что наблюдаемое событие блокируется при инициализации. Но после этого вы визуализируете элемент пользовательского интерфейса. Входные данные $ dynamicBox изменяются с NULL на FALSE, что приводит к запуску функции наблюдающего события.
Вы можете подделать поведение, введя в сеанс уникальную глобальную переменную, скажем unique_init_variable < < - FALSE, а затем измените ее на true, как только вы используете этот флажок. Вот пример кода
library(shinydashboard)
library(shiny)
library(shinyjs)
ui <- dashboardPage(
dashboardHeader(title = "observeEvent ignoreInit"),
dashboardSidebar(),
dashboardBody(
useShinyjs(),
checkboxInput("staticBox", "static"),
uiOutput("body"))
)
server <- function(input, output, session) {
# unique init variable
unique_init_variable <<- FALSE
output$body <- renderUI( tagList(
checkboxInput("dynamicBox", "dynamic"),
checkboxInput("dynamicBoxDelayed", "dynamic delayed")
))
# observe static checkBox
observeEvent(input$staticBox, {
cat("observeEvent of static checkBox is executed\n")
}, ignoreInit=TRUE)
# observe dynamic checkBox
observeEvent(input$dynamicBox, {
if (input$dynamicBox == TRUE) {
unique_init_variable <<- TRUE
}
if (unique_init_variable) {
# this is executed upon start, although ignoreInit is set to TRUE
cat("observeEvent of dynamic checkBox is executed\n")
cat( paste0("dynamicBox value = '", input$dynamicBox, "'\n") )
}
}, ignoreInit=TRUE)
# observe dynamicDelayed checkBox
shinyjs::delay(100, {
observeEvent(input$dynamicBoxDelayed, {
cat("observeEvent of dynamic checkBoxDelayed is executed\n")
}, ignoreInit=TRUE)
})
}
shinyApp(ui, server)
поместите это в свой vimrc
map ,n <Esc>:let @*=line(".")<CR>
затем использование, n скопирует текущий номер строки в буфер обмена
Кроме того, для использования GDB из энергии можно хотеть проверить некоторые gdb сценарии на vim.sourceforge.net -
Таким образом, волшебная строка:
:call setreg('*', line('.'))
Причина:
line('.')
содержит текущий номер строкиКонечно, можно отобразить ту функцию на ярлык:
nmap ,ln :call setreg('*', line('.'))<CR>
Не уверенный, если это - то, что Вы после, но Вы попытались использовать маркеры?
Поместите курсор на строку, Вы хотите, затем вводите m и букву, говорите a.
Ввод 'желания берет Вас к строке, содержащей маркер.
Ввод 'желания берет Вас к фактической букве, которую Вы отметили в строке.
Хм, просто думая немного далее, это должно быть доступно, как номер строки доступен для использования в различных функциях, например, для использования в строке состояния.